Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีเปลี่ยนค่า Auto Increment ระหว่างการใช้งานใน MySQL


สามารถเปลี่ยนค่า AUTO_INCREMENT ได้ทุกเมื่อด้วยคำสั่ง ALTER TABLE แม้ตารางจะมีข้อมูลอยู่แล้ว

สร้างตารางและเพิ่มข้อมูล 3 แถว (ID 1,2,3):

mysql> CREATE table AutoIncrementTable ( id int auto_increment, name varchar(200), Primary key(id) ); Query OK, 0 rows affected (0.70 sec)
mysql> INSERT into AutoIncrementTable(name) values('Carol'); Query OK, 1 row affected (0.19 sec)
mysql> INSERT into AutoIncrementTable(name) values('Bob'); Query OK, 1 row affected (0.15 sec)
mysql> INSERT into AutoIncrementTable(name) values('John'); Query OK, 1 row affected (0.18 sec)
mysql> SELECT * from AutoIncrementTable;
+----+-------+
| id | name  |
+----+-------+
| 1  | Carol |
| 2  | Bob   |
| 3  | John  |
+----+-------+

เปลี่ยนค่า Auto Increment ถัดไปเป็น 1000:

mysql> alter table AutoIncrementTable auto_increment = 1000; Query OK, 0 rows affected (0.16 sec)

เพิ่มข้อมูลใหม่ 2 แถว:

mysql> INSERT into AutoIncrementTable(name) values('Taylor'); Query OK, 1 row affected (0.12 sec)
mysql> INSERT into AutoIncrementTable(name) values('Sam'); Query OK, 1 row affected (0.17 sec)

ผลลัพธ์: ID ใหม่เริ่มจาก 1000, 1001

mysql> SELECT * from AutoIncrementTable;
+------+--------+
| id   | name   |
+------+--------+
| 1    | Carol  |
| 2    | Bob    |
| 3    | John   |
| 1000 | Taylor |
| 1001 | Sam    |
+------+--------+

ไวยากรณ์: ALTER TABLE yourTableName AUTO_INCREMENT = startingNumber;