Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में प्रारंभिक मान और ऑटो इन्क्रीमेंट कैसे सेट करें?


AUTO_INCREMENT विशेषता का उपयोग नई रो के लिए एक अद्वितीय पहचानकर्ता उत्पन्न करने के लिए किया जाता है। यदि किसी कॉलम को 'NOT NULL' घोषित किया गया है, तो उस कॉलम को NULL असाइन करना संभव है ताकि संख्याओं का अनुक्रम उत्पन्न हो सके।

जब किसी AUTO_INCREMENT कॉलम में कोई मान डाला जाता है, तो कॉलम उस मान पर सेट हो जाता है, और अनुक्रम भी रीसेट हो जाता है ताकि यह सबसे बड़े कॉलम मान से क्रमिक सीमा में स्वचालित रूप से मान उत्पन्न करे।

एक मौजूदा 'AUTO_INCREMENT' कॉलम को अपडेट किया जा सकता है जो 'AUTO_INCREMENT' अनुक्रम को भी रीसेट करेगा। सबसे हाल ही में ऑटो-जेनरेटेड 'AUTO_INCREMENT' मान को SQL में 'LAST_INSERT_ID()' फंक्शन का उपयोग करके या 'mysql_insert_id()' का उपयोग करके प्राप्त किया जा सकता है जो एक C API फंक्शन है।

ये फंक्शन कनेक्शन-विशिष्ट हैं, जिसका अर्थ है कि उनके रिटर्न मान अन्य कनेक्शन द्वारा किए गए इन्सर्ट ऑपरेशन से प्रभावित नहीं होते हैं। 'AUTO_INCREMENT' कॉलम के लिए सबसे छोटा पूर्णांक डेटा प्रकार उपयोग किया जा सकता है, जो उपयोगकर्ता द्वारा आवश्यक अधिकतम अनुक्रम मान को रखने के लिए पर्याप्त बड़ा होगा।

AUTO_INCREMENT के लिए नियम

AUTO_INCREMENT विशेषता का उपयोग करते समय निम्नलिखित नियमों का पालन करने की आवश्यकता है:

  • प्रत्येक टेबल में केवल एक AUTO_INCREMENT कॉलम होता है जिसका डेटा प्रकार आमतौर पर एक पूर्णांक होता है।

  • AUTO_INCREMENT कॉलम को इंडेक्स किया जाना चाहिए। इसका मतलब है कि यह या तो PRIMARY KEY या UNIQUE इंडेक्स हो सकता है।

  • AUTO_INCREMENT कॉलम पर NOT NULL कंस्ट्रेंट होना चाहिए।

  • जब AUTO_INCREMENT विशेषता किसी कॉलम पर सेट की जाती है, तो MySQL स्वचालित रूप से उस कॉलम पर NOT NULL कंस्ट्रेंट जोड़ देता है।

यदि टेबल में कोई id कॉलम नहीं जोड़ा गया है, तो नीचे दिए गए स्टेटमेंट का उपयोग किया जा सकता है:

ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);

यदि id कॉलम पहले से मौजूद है, तो नीचे दिए गए कमांड का उपयोग किया जा सकता है:

ALTER TABLE tableName AUTO_INCREMENT=specificValue;

यहां, tableName उस टेबल के नाम को संदर्भित करता है जिसके लिए 'AUTO_INCREMENT' कॉलम सेट करने की आवश्यकता है। 'specificValue' एक पूर्णांक को संदर्भित करता है जहां से उपयोगकर्ता द्वारा 'AUTO_INCREMENT' मान शुरू करने के लिए निर्दिष्ट किए जाते हैं।


  1. - MySQL में DEFAULT NULL का उपयोग करके डिफ़ॉल्ट मान NULL कैसे सेट करें?

    MySQL में DEFAULT NULL के साथ कॉलम डिफ़ॉल्ट सेट करना MySQL में, आप DEFAULT NULL क्लॉज का उपयोग करके किसी कॉलम के लिए स्पष्ट रूप से NULL को डिफ़ॉल्ट मान के रूप में सेट कर सकते हैं। यह तब उपयोगी होता है जब कोई मान प्रदान नहीं किया जाता है तो कॉलम वैकल्पिक होना चाहिए। उदाहरण: वैकल्पिक कॉलम वाली छात्र

  1. - MySQL में IF() से टाइमस्टैम्प कॉलम आधारित बूलियन मान चुनें

    IF(condition, true_val, false_val) का उपयोग करके टाइमस्टैम्प कॉलम की वर्तमान दिनांक से तुलना करके बूलियन (0/1) मान उत्पन्न करें। वर्तमान दिनांक mysql> SELECT CURDATE(); -- 2019-12-10 टेबल बनाएं mysql> CREATE TABLE DemoTable1890 (DueDate TIMESTAMP); डेटा डालें mysql> INSERT INTO DemoTable

  1. - MySQL कॉलम मान में ZEROFILL के साथ अग्रणी शून्य कैसे जोड़ें?

    MySQL में संख्यात्मक कॉलम में अग्रणी शून्य (leading zeros) जोड़कर निश्चित चौड़ाई का डिस्प्ले फॉर्मेट प्राप्त करने के लिए ZEROFILL एट्रिब्यूट का उपयोग करें। यह अकाउंट नंबर, इनवॉइस नंबर, आईडी आदि के लिए आदर्श है। उदाहरण: ZEROFILL के साथ ऑटो-इन्क्रीमेंट ID 4-अंकीय ZEROFILL कॉलम के साथ टेबल बनाएं: my