MySQL में डिफ़ॉल्ट रूप से AUTO_INCREMENT 1 से शुरू होता है। इसे किसी अन्य संख्या से शुरू करने के लिए ALTER TABLE का उपयोग करें।
सिंटैक्स
ALTER TABLE yourTableName AUTO_INCREMENT = yourStartingNumber;
उदाहरण
टेबल बनाना
mysql> create table startAutoIncrement ( -> Counter int auto_increment, -> primary key(Counter) -> ); Query OK, 0 rows affected (0.90 sec)
AUTO_INCREMENT को 20 से शुरू करना
mysql> alter table startAutoIncrement auto_increment=20; Query OK, 0 rows affected (0.30 sec)
रिकॉर्ड डालना (मान निर्दिष्ट किए बिना)
mysql> insert into startAutoIncrement values(); mysql> insert into startAutoIncrement values(); mysql> insert into startAutoIncrement values();
परिणाम देखना
mysql> select *from startAutoIncrement;
+---------+ | Counter | +---------+ | 20 | | 21 | | 22 | +---------+
महत्वपूर्ण बिंदु
- शुरुआती मान वर्तमान अधिकतम मान से अधिक होना चाहिए
- यदि आप वर्तमान मैक्स से कम मान सेट करते हैं, तो MySQL इसे अनदेखा कर देगा
TRUNCATE TABLEAUTO_INCREMENT को रीसेट कर देता है- वर्तमान AUTO_INCREMENT मान देखने के लिए:
SHOW TABLE STATUS LIKE 'table_name'
वर्तमान AUTO_INCREMENT मान जांचना
mysql> SHOW TABLE STATUS LIKE 'startAutoIncrement'\G *************************** 1. row *************************** Auto_increment: 23
रीसेट करना (सावधानी से उपयोग करें)
-- टेबल खाली करके रीसेट (सभी डेटा हट जाएगा) TRUNCATE TABLE startAutoIncrement; -- या विशिष्ट मान पर रीसेट (टेबल खाली होना चाहिए) ALTER TABLE startAutoIncrement AUTO_INCREMENT = 100;