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

ALTER कमांड से MySQL टेबल का ऑटो इन्क्रीमेंट प्रारंभिक मान सेट करें

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

मौजूदा टेबल पर ऑटो-इन्क्रीमेंट शुरुआती मान सेट करने के लिए दो ALTER TABLE स्टेटमेंट आवश्यक हैं।

चरण 1: कॉलम को ऑटो-इन्क्रीमेंट प्राइमरी की बनाएं

ALTER TABLE yourTableName
MODIFY yourColumnName INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
ADD INDEX (yourColumnName);

चरण 2: प्रारंभिक मान सेट करें

ALTER TABLE yourTableName AUTO_INCREMENT = yourStartingValue;

उदाहरण

mysql> CREATE TABLE setAutoIncrementDemo (UserId INT, UserName VARCHAR(20));

चरण 1

mysql> ALTER TABLE setAutoIncrementDemo
    -> MODIFY UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> ADD INDEX (UserId);
Query OK, 0 rows affected (1.51 sec)

चरण 2

mysql> ALTER TABLE setAutoIncrementDemo AUTO_INCREMENT = 1000;
Query OK, 0 rows affected (0.34 sec)

डेटा डालकर सत्यापित करें

mysql> INSERT INTO setAutoIncrementDemo(UserName) VALUES ('John'), ('Carol'), ('Sam');
+--------+----------+
| UserId | UserName |
+--------+----------+
| 1000   | John     |
| 1001   | Carol    |
| 1002   | Sam      |
+--------+----------+

महत्वपूर्ण नोट्स

  • यदि टेबल खाली नहीं है, तो AUTO_INCREMENT मान वर्तमान अधिकतम ID + 1 से कम नहीं हो सकता
  • SHOW TABLE STATUS LIKE 'table_name' से वर्तमान ऑटो-इन्क्रीमेंट मान देखें
  • ट्रंकेट करने पर ऑटो-इन्क्रीमेंट रीसेट हो जाता है (इंजन पर निर्भर)
  • InnoDB में रीस्टार्ट पर ऑटो-इन्क्रीमेंट रीसेट हो सकता है

टेबल बनाते समय सेट करना

CREATE TABLE t (id INT AUTO_INCREMENT PRIMARY KEY) AUTO_INCREMENT = 1000;
  1. - MySQL में NOT NULL मान के लिए 1 सेट करें

    MySQL में किसी कॉलम के NOT NULL मान होने पर 1 और NULL होने पर 0 लौटाने के लिए IF() फंक्शन के साथ IS NOT NULL ऑपरेटर का उपयोग करें। यह डेटा वैलिडेशन, रिपोर्टिंग, और कंडीशनल एग्रीगेशन के लिए उपयोगी है। बुनियादी सिंटैक्स SELECT IF( IS NOT NULL, 1, 0) AS anyAliasName; आउटपुट: 1 (क्योंकि खाली स्ट्रिंग N

  1. - MySQL में कॉलम मानों के लिए ENUM कैसे सेट करें?

    ENUM कॉलम के साथ टेबल बनाना टेबल बनाते समय ENUM प्रकार निर्दिष्ट करें: ); रिकॉर्ड डालना INSERT INTO DemoTable2019 VALUES (45, Second); सभी रिकॉर्ड देखना SELECT * FROM DemoTable2019; +--------------+---------------+ | StudentMarks | StudentStatus | +--------------+---------------+ | 96

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

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