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

मैसकल डेटाटाइम डिफ़ॉल्ट CURRENT_TIMESTAMP त्रुटि

DEFAULT CURRENT_TIMESTAMP DATETIME . के लिए समर्थन (डेटाटाइप) को MySQL 5.6 में जोड़ा गया था।

5.5 और पुराने संस्करणों में, यह केवल TIMESTAMP . पर लागू होता था (डेटाटाइप) कॉलम।

BEFORE INSERT . का उपयोग करना संभव है किसी कॉलम को डिफ़ॉल्ट मान निर्दिष्ट करने के लिए 5.5 में ट्रिगर करें।

 DELIMITER $$

 CREATE TRIGGER ...
 BEFORE INSERT ON mytable
 FOR EACH ROW
 BEGIN
    IF NEW.mycol IS NULL THEN
       SET NEW.mycol = NOW();
    END IF;
 END$$

<स्ट्राइक>केस संवेदनशीलता (स्तंभों में संग्रहीत मानों के विरुद्ध प्रश्नों की) collation के कारण है कॉलम के लिए उपयोग किया जाता है। _ci in में समाप्त होने वाले संयोजन केस असंवेदनशील हैं। उदाहरण के लिए latin1_swedish_ci केस असंवेदनशील है, लेकिन latin1_general_cs केस संवेदनशील है।

SHOW CREATE TABLE foo . से आउटपुट चरित्र प्रकार कॉलम के लिए वर्ण सेट और संयोजन दिखाएगा। यह प्रति-स्तंभ स्तर पर निर्दिष्ट है। तालिका स्तर पर निर्दिष्ट "डिफ़ॉल्ट" तालिका में जोड़े गए नए कॉलम पर लागू होता है जब नई कॉलम परिभाषा एक वर्ण सेट निर्दिष्ट नहीं करती है।

अपडेट करें

काई ने बताया कि "केस सेंसिटिविटी" के बारे में मेरा जवाब कॉलम के भीतर संग्रहीत मूल्यों से संबंधित है, और क्या प्रश्न "New" के मान वाले कॉलम से एक मान लौटाएंगे। एक विधेय के साथ लौटाया जाएगा जैसे "t.col = 'new'"

पहचानकर्ताओं . के संबंध में काई का उत्तर देखें (उदाहरण के लिए टेबल के नाम) को लिनक्स की तुलना में विंडोज़ पर अलग तरीके से (डिफ़ॉल्ट रूप से) हैंडल किया जा रहा है।



  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 निश्चित समस्याओं का निवारण कैसे करें

  2. mysql तालिका में डुप्लिकेट मान कैसे हटाएं?

  3. फ़ील्ड 'आईडी' का कोई डिफ़ॉल्ट मान नहीं है?

  4. एसक्यूएल में 'लिमिट' पैरामीटर कैसे काम करता है?

  5. mysql 5.7 लॉग-धीमी-प्रश्न त्रुटि