如何更改MySQL AUTO_INCREMENT的起始編號?
MySQL AUTO_INCREMENT 值預設從 1 開始,但我們可以透過以下兩種方法更改它:
使用ALTER TABLE語句
我們可以使用ALTER TABLE語句來更改AUTO_INCREMENT的起始值,如下所示:
ALTER TABLE table_name AUTO_INCREMENT = value;
示例
假設我們建立了一個表,其中包含名為“id”的AUTO_INCREMENT列。現在,如果我們向其中插入值,則序列號將從1開始,如下面的查詢所示:
mysql> Create Table EMP(id int NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10));
Query OK, 0 rows affected (0.07 sec)
mysql> Insert Into EMP(Name) Values('Aryan');
Query OK, 1 row affected (0.02 sec)
mysql> Insert Into EMP(Name) Values('Yash');
Query OK, 1 row affected (0.04 sec)
mysql> Select * from EMP;
+----+-------+
| id | NAME |
+----+-------+
| 1 | Aryan |
| 2 | Yash |
+----+-------+
2 rows in set (0.00 sec)現在,如果我們想之後更改序列號,我們需要使用ALTER TABLE語句更改AUTO_INCREMENT的值,如下所示:
mysql> Alter table emp auto_increment = 10;
Query OK, 2 rows affected (0.25 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> Insert Into EMP(Name) Values('Daksh');
Query OK, 1 row affected (0.03 sec)
mysql> Insert Into EMP(Name) Values('Shayra');
Query OK, 1 row affected (0.06 sec)
mysql> Select * from EMP;
+----+--------+
| id | NAME |
+----+--------+
| 1 | Aryan |
| 2 | Yash |
| 10 | Daksh |
| 11 | Shayra |
+----+--------+
4 rows in set (0.00 sec)上面的查詢已將AUTO_INCREMENT的值更改為10,因此在之後插入新值時,我們將從10開始獲得序列號。
使用CREATE TABLE語句
我們也可以在建立表時更改AUTO_INCREMENT值。可以透過在CREATE TABLE語句中指定AUTO_INCREMENT的值來實現,如下所示:
CREATE TABLE (Column1 INT PRIMARY KEY NOT NULL AUTO_INCREMENT, Column2 data type) AUTO_INCREMENT = value;
示例
mysql> Create Table EMP1(id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10)) AUTO_INCREMENT = 100; Query OK, 0 rows affected (0.11 sec)
上面的查詢在建立表時將AUTO_INCREMENT的值指定為100。現在,如果我們向其中插入值,則序列號將從100開始,而不是預設值1,如下所示:
mysql> Insert into emp1(name) values('Sohan');
Query OK, 1 row affected (0.04 sec)
mysql> Insert into emp1(name) values('Harshit');
Query OK, 1 row affected (0.05 sec)
mysql> Select * from emp1;
+-----+---------+
| id | NAME |
+-----+---------+
| 100 | Sohan |
| 101 | Harshit |
+-----+---------+
2 rows in set (0.00 sec)
廣告
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP