MySQL 如何更改MySQL AUTO_INCREMENT的起始数字?

MySQL 如何更改MySQL AUTO_INCREMENT的起始数字?

MySQL AUTO_INCREMENT的值从1开始,但我们可以通过以下两种方式来更改它 –

阅读更多:MySQL 教程

使用ALTER TABLE查询

我们可以使用ALTER TABLE查询来更改AUTO_INCREMENT的起始值,如下所示 –

ALTER TABLE table_name AUTO_INCREMENT = value;

示例

假设我们创建了一个带有’id’列的自动增量的表。现在,如果我们在其中插入值,那么序号将从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)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程