MySQL में सीक्वेंस क्या है?
MySQL में, अनुक्रम पूर्णांकों की एक सूची को संदर्भित करता है जो निर्दिष्ट होने पर 1 या 0 से शुरू होने वाले आरोही क्रम में उत्पन्न होता है। कई अनुप्रयोगों को अनुक्रमों की आवश्यकता होती है जिनका उपयोग विशेष रूप से पहचान के लिए अद्वितीय संख्याएं उत्पन्न करने के लिए किया जाएगा।
उदाहरण
उदाहरणों में सीआरएम में ग्राहक आईडी, एचआर में कर्मचारी संख्या और सेवा प्रबंधन प्रणाली में उपकरण संख्या शामिल हैं।
MySQL में स्वचालित रूप से अनुक्रम बनाने के लिए, कॉलम के लिए AUTO_INCREMENT विशेषता को सेट करने की आवश्यकता है। यह आम तौर पर एक प्राथमिक कुंजी कॉलम होगा।
नियम
AUTO_INCREMENT विशेषता का उपयोग करते समय निम्नलिखित नियमों का पालन करने की आवश्यकता है -
प्रत्येक तालिका में केवल एक AUTO_INCREMENT कॉलम होता है जिसका डेटा प्रकार आमतौर पर एक पूर्णांक होगा।
AUTO_INCREMENT कॉलम को अनुक्रमित करने की आवश्यकता है। इसका अर्थ है कि यह प्राथमिक या अद्वितीय अनुक्रमणिका हो सकता है।
AUTO_INCREMENT कॉलम में NOT NULL बाधा होनी चाहिए।
जब AUTO_INCREMENT विशेषता को एक कॉलम पर सेट किया जाता है, तो MySQL अपने आप ही कॉलम में NOT NULL बाधा जोड़ देता है।
एक MySQL अनुक्रम बनाएं
आइए एक MySQL अनुक्रम बनाने का एक उदाहरण देखें -
CREATE TABLE tableName ( emp_no INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(50), last_name VARCHAR(50) )
आइए समझते हैं कि AUTO_INCREMENT कॉलम कैसे काम करता है -
-
AUTO_INCREMENT कॉलम का शुरुआती मान आमतौर पर 1 होता है। जब कॉलम में NULL मान डाला जाता है या INSERT स्टेटमेंट में कोई मान छोड़ा जाता है, तो इसे 1 से बढ़ा दिया जाता है।
-
अंतिम उत्पन्न अनुक्रम संख्या प्राप्त करने के लिए, LAST_INSERT_ID() फ़ंक्शन का उपयोग किया जा सकता है।
-
पिछला जनरेट किया गया क्रम सभी सत्रों में अद्वितीय है।
-
यदि कोई अन्य कनेक्शन अनुक्रम संख्या उत्पन्न करता है, तो इसे LAST_INSERT_ID() फ़ंक्शन का उपयोग करके प्राप्त किया जा सकता है।
-
यदि तालिका में एक नई पंक्ति डाली जाती है और अनुक्रम कॉलम के लिए एक मान निर्दिष्ट किया जाता है, तो MySQL अनुक्रम संख्या सम्मिलित करना सुनिश्चित करता है यदि अनुक्रम संख्या कॉलम में मौजूद नहीं है।