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

ऐप में सही समय लेकिन mysql में गलत [समय क्षेत्र]

MySQL में कॉलम कितने प्रकार के होते हैं? मुझे संदेह है कि यह DATETIME है। यह प्रकार "समय में क्षण" संग्रहीत नहीं करता है, यह "घड़ी पर घंटे" संग्रहीत करता है, इसलिए अलग-अलग समय क्षेत्रों में अलग-अलग क्षण हो सकते हैं।

जब MySQL ड्राइवर java.util.Date to DATETIME कॉलम लिखता है, तो उसे "घड़ी पर घंटा" लिखने के लिए कुछ समय क्षेत्र चुनना पड़ता है, क्योंकि एक ही java.util.Date का अर्थ अलग-अलग समय क्षेत्रों में अलग-अलग घंटे हो सकता है। यह MySQL सर्वर के स्थानीय समय क्षेत्र की तरह घंटे को स्टोर करता है।

LocalDateTime में यह समस्या नहीं है, क्योंकि यह DATETIME की तरह है। यह घड़ी पर घंटे का प्रतिनिधित्व करता है, समय में क्षण नहीं, इस प्रकार वर्ष/माह/दिन-घंटा/मिनट/सेकंड डेटाबेस में संग्रहीत होते हैं। हाइबरनेट लॉग में नोटिस लोकलडेटटाइम जैसा है वैसा ही दिया गया है, जबकि तारीख के आगे टाइमज़ोन ("सीएसटी") है।

आम तौर पर, यूटीसी में हमेशा समय स्टोर करना अच्छा अभ्यास है, इसलिए डेटटाइम का उपयोग करें, न कि दिनांक और न ही लोकलडेटटाइम। जदिरा कनवर्टर के साथ डेटटाइम हमेशा DATETIME को UTC के रूप में संग्रहीत/पढ़ता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql ने GROUP_CONCAT का उपयोग करके शामिल होने में मानों को डुप्लिकेट किया

  2. परिवर्तन के लिए mysql की निगरानी करना

  3. MySQL यूनिक्स टाइमस्टैम्प में समय अंतर कैसे प्राप्त करें?

  4. MySQL में 2 स्ट्रिंग्स की तुलना करने के लिए STRCMP () का उपयोग कैसे करें

  5. आर पैकेज आरजेडीबीसी के साथ एक MySQL चयन कथन में कॉलम का नाम बदलना