2009-03-27 17 views
5

पर टाइमज़ोन बदलना बेवकूफ की तरह, मैंने टाइमज़ोन सेटिंग को पूरी तरह से अनदेखा कर दिया जब मैंने पहली बार डेटाटाइम डेटा एकत्र करने वाले एप्लिकेशन को बनाया।किसी मौजूदा Django प्रोजेक्ट

यह कोई मुद्दा नहीं था क्योंकि मैं जो कुछ भी कर रहा था वह "समय-समय" शैली तुलना और आदेश था। अब मुझे पूर्ण रिपोर्ट करने की ज़रूरत है जो वास्तविक डेटाटाइम दिखाएंगे और निश्चित रूप से, वे सभी अमेरिका/शिकागो (हास्यास्पद Django डिफ़ॉल्ट) में संग्रहीत हैं।

तो हाँ। मेरे पास इन तिथियों से भरा मध्यम आकार का डेटाबेस है जो गलत हैं। मैं settings.TIME_ZONE को 'UTC' में बदलना चाहता हूं लेकिन इससे मेरे मौजूदा डेटा में मदद नहीं मिलती है।

उस मॉडल डेटा को बड़े पैमाने पर परिवर्तित करने के लिए सबसे अच्छा (पढ़ें: सबसे आसान, तेज़) तरीका क्या है?

(सभी डेटा पिछले दो महीनों के भीतर से है, इसलिए वहाँ शुक्र है परिवर्तित करने के लिए कोई डीएसटी है)

इस परियोजना SQLite पर वर्तमान में है, लेकिन मैं एक ऐसी ही समस्या यह है कि मैं करने के लिए चाहते हो सकता है के साथ PostgreSQL पर एक अन्य परियोजना है डीएसटी में आने से पहले ऐसा ही करें ... तो आदर्श रूप से एक डीबी-अज्ञेय उत्तर।

+0

क्या डेटाबेस का उपयोग कर रहे है, btw? –

+0

SQLite लेकिन यह पूरी तरह से संभव है मैं एक और प्रोजेक्ट पर एक ही काम करना चाहता हूं जिसके लिए मैंने पोस्टग्रेस का उपयोग किया ... कुछ डीबी-अज्ञेयवादी आदर्श होगा =) – Oli

+1

SQLite सबकुछ टेक्स्ट के रूप में संग्रहीत करता है। कुछ डेटाबेस, हालांकि, आंतरिक रूप से यूटीसी में डेटाटाइम स्टोर करते हैं। ओरेकल, उदाहरण के लिए, डाटाबेस में स्थानीय स्तर पर यूटीसी का अनुवाद करता है। प्रदर्शित लोकलटाइम को बदलने के लिए आपको कुछ भी अपडेट करने की ज़रूरत नहीं है। –

उत्तर

3

मैं डेटाटाइम फ़ील्ड से/घंटे जोड़कर या घटाकर डेटाबेस टेबल पर एक बड़े पैमाने पर अद्यतन करता हूं।

कुछ इस तरह एसक्यूएल सर्वर में काम करता है, और आज तक 2 घंटे जोड़ता है:

update tblName set date_field = dateadd("hh", 2, data_field) 
संबंधित मुद्दे