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

MySQL INT कॉलम को 10000 से ऑटो-इन्क्रीमेंट कैसे सेट करें?

AUTO_INCREMENT प्रारंभ मान ALTER TABLE से सेट करें

MySQL में ऑटो-इन्क्रीमेंट कॉलम का प्रारंभ मान बदलने के लिए ALTER TABLE ... AUTO_INCREMENT = value का उपयोग करें।

टेबल बनाना

mysql> CREATE TABLE DemoTable (
    UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);

ऑटो-इन्क्रीमेंट प्रारंभ मान सेट करना

mysql> ALTER TABLE DemoTable AUTO_INCREMENT = 10000;
Query OK, 0 rows affected (0.31 sec)

डेटा डालना (ID निर्दिष्ट किए बिना)

mysql> INSERT INTO DemoTable VALUES();
mysql> INSERT INTO DemoTable VALUES();
mysql> INSERT INTO DemoTable VALUES();
mysql> INSERT INTO DemoTable VALUES();

परिणाम

mysql> SELECT * FROM DemoTable;

+--------+
| UserId |
+--------+
| 10000  |
| 10001  |
| 10002  |
| 10003  |
+--------+

महत्वपूर्ण नियम

  • केवल बढ़ा सकते हैं: वर्तमान अधिकतम ID से कम मान सेट नहीं कर सकते
  • टेबल खाली हो तो कोई भी मान: खाली टेबल पर कोई भी प्रारंभ मान सेट कर सकते हैं
  • डेटा होने पर: AUTO_INCREMENT मान वर्तमान अधिकतम ID + 1 से कम नहीं हो सकता

वर्तमान AUTO_INCREMENT मान देखना

mysql> SHOW TABLE STATUS LIKE 'DemoTable'\G
-- या
SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME = 'DemoTable';

टेबल निर्माण के समय सेट करना

CREATE TABLE DemoTable (
    UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY
) AUTO_INCREMENT = 10000;

उपयोग मामले

  • मौजूदा सिस्टम के साथ ID रेंज समन्वय
  • मर्ज/माइग्रेशन के लिए ID रेंज आरक्षित करना
  • परीक्षण डेटा के लिए विशिष्ट रेंज
  1. - MySQL में ZEROFILL के साथ कस्टम ऑटो-इन्क्रीमेंट सेट करें

    ZEROFILL विशेषता संख्यात्मक कॉलम को बाएं से शून्य से भरकर निर्दिष्ट चौड़ाई तक पैड करती है। यह UNSIGNED भी बनाता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1831 ( UserId INT(7) ZEROFILL AUTO_INCREMENT, PRIMARY KEY(UserId) ); यहां INT(7) का अर्थ है प्रदर्शन चौड़ाई 7 अंक। डेटा डालें mysq

  1. - MySQL में ALTER TABLE का उपयोग करके मौजूदा कॉलम पर NOT NULL विशेषता सेट करें

    MySQL में मौजूदा कॉलम को NOT NULL बनाना मौजूदा कॉलम पर NOT NULL प्रतिबंध जोड़ने के लिए, ALTER TABLE ... MODIFY स्टेटमेंट का उपयोग करें जिसमें कॉलम परिभाषा में NOT NULL शामिल हो। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) UserName पर NOT NULL प्रतिबंध जोड़ना MODIFY UserName VARCHAR(20) NO

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

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