PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

पोस्टग्रेज़ टाइमज़ोन रूपांतरण के साथ टाइमस्टैम्प को रोकते हैं

आपका प्रस्तावित समाधान सही है। या अधिक सटीक रूप से, यह कई सही कार्यान्वयनों में से एक है। निम्न में से कोई भी काम करेगा:

  • यूटीसी टाइमस्टैम्प को एक फ़ील्ड में स्टोर करें, ऑफ़सेट को दूसरे में स्टोर करें।
  • स्थानीय टाइमस्टैम्प को संगृहीत करें एक फ़ील्ड में, ऑफ़सेट को दूसरे में संग्रहीत करें।
  • स्थानीय date स्टोर करें एक फ़ील्ड में, और एक time with time zone स्टोर करें दूसरे में। (हालांकि time with time zone आमतौर पर हतोत्साहित किया जाता है...)
  • यूटीसी टाइमस्टैम्प को एक फ़ील्ड में और स्थानीय टाइमस्टैम्प को दूसरे फ़ील्ड में स्टोर करें।

अब तक का सबसे आसान पहला है, जिसे आप पहले ही प्रस्तावित कर चुके हैं।

मैं टाइमस्टैम्प को text . में संग्रहीत करने से बचूंगा फ़ील्ड, क्योंकि वे बहुत कुशलता से खोजने योग्य नहीं होते हैं।

यह भी ध्यान दें - यदि आप SQL सर्वर पृष्ठभूमि से आ रहे हैं, तो आपको इसका datetimeoffset याद हो सकता है टाइप करें, जो स्थानीय डेटाटाइम को स्टोर करता है और फ़ील्ड में ऑफ़सेट करता है, और इंडेक्सिंग के दौरान यूटीसी समकक्ष का उपयोग करता है। यह सोचना आम बात है कि पोस्टग्रेज और MySQL का timestamp with time zone एक ही व्यवहार होगा, लेकिन वे नहीं करते। वे बस सत्र . का उपयोग करते हैं UTC से/में बदलने के लिए समय क्षेत्र। SQL सर्वर में सत्र समय क्षेत्र और इस प्रकार विसंगति की कोई अवधारणा नहीं है।

पोस्टग्रेज डॉक्स के इस भाग को पढ़ना सुनिश्चित करें




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL स्कीमा में तालिकाएँ सूचीबद्ध करें

  2. पोस्टग्रेज में REINDEX चलाने की आवश्यकता कब होती है

  3. स्कीमा पर उपयोग अनुदान वास्तव में क्या करता है?

  4. तालिका, फ़ील्ड और स्कीमा नाम का उपयोग करके संदर्भित तालिका का नाम खोजें

  5. Postgres क्वेरी विंडो में पैरामीटर के साथ मेरे तदर्थ SQL का परीक्षण कैसे करें