"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > संस्करण 5.6.5 से पहले MySQL में टाइमस्टैम्प कॉलम के साथ current_timestamp का उपयोग करने पर क्या प्रतिबंध थे?

संस्करण 5.6.5 से पहले MySQL में टाइमस्टैम्प कॉलम के साथ current_timestamp का उपयोग करने पर क्या प्रतिबंध थे?

2025-02-04 को प्रकाशित
ब्राउज़ करें:963

] एक प्रतिबंध था जो एक तालिका को सीमित करने के लिए केवल एक टाइमस्टैम्प कॉलम को एक डिफ़ॉल्ट current_timestamp के साथ या अपडेट पर current_timestamp क्लॉज पर सीमित करता है। यह सीमा INT, BigInt, और SmallInt पूर्णांक को वापस बढ़ाती है जब उन्हें शुरू में 2008 में पेश किया गया था।

What Were the Restrictions on Using CURRENT_TIMESTAMP with TIMESTAMP Columns in MySQL Before Version 5.6.5?
यह सीमा विरासत कार्यान्वयन चिंताओं से उपजी थी, जो current_timestamp कार्यक्षमता के लिए एक विशिष्ट कार्यान्वयन की आवश्यकता थी। संदेश और संबंधित मुद्दे

उदाहरण के लिए, निम्न तालिका परिभाषा पर विचार करें, जो वर्तमान_टाइमस्टैम्प मान के साथ दो टाइमस्टैम्प कॉलम को परिभाषित करने का प्रयास करता है:

तालिका `foo` (((&&&] `Productid` int (10) अहस्ताक्षरित अशक्त नहीं, `जोड़ा गया` टाइमस्टैम्प नल डिफ़ॉल्ट current_timestamp नहीं, `अपडेटेडडेट` टाइमस्टैम्प नल डिफ़ॉल्ट current_timestamp पर null नहीं ) इंजन = innodb;

केवल एक टाइमस्टैम्प कॉलम हो सकता है

current_timestamp के साथ डिफ़ॉल्ट रूप से या

अद्यतन खंड

पर इस त्रुटि ने संकेत दिया कि तालिका की परिभाषा ने उपरोक्त प्रतिबंध का उल्लंघन किया है।

&&& &] प्रतिबंध को हटाना
CREATE TABLE `foo` (
  `ProductID` INT(10) UNSIGNED NOT NULL,
  `AddedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `UpdatedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=INNODB;
इस सीमा के लिए तकनीकी नींव के बावजूद, MySQL टीम ने इसकी असुविधा को मान्यता दी। इसके बाद, MySQL 5.6.5 (10 अप्रैल, 2012 को जारी) में, प्रतिबंध हटा दिया गया था।

इस अद्यतन के लिए परिवर्तन लॉग में कहा गया है:


पहले, सबसे अधिक एक टाइमस्टैम्प कॉलम प्रति तालिका प्रति टेबल वर्तमान तिथि और समय के लिए स्वचालित रूप से इनिशियलाइज़ या अपडेट किया जा सकता है। यह प्रतिबंध हटा दिया गया है। किसी भी टाइमस्टैम्प कॉलम की परिभाषा में डिफ़ॉल्ट current_timestamp का कोई संयोजन हो सकता है और अपडेट पर current_timestamp क्लॉस हो सकता है। इसके अलावा, इन खंडों का उपयोग अब डेटटाइम कॉलम परिभाषाओं के साथ किया जा सकता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3