如何更改 MySQL 中的自动增量数字?

mysqlmysqli database

auto_increment 是一个默认属性,它会自动将新添加的记录增加 1。可以使用 alter 命令更改起始数字。

首先,使用 insert 命令创建一个表。如下所示 −

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)

现在,可以借助 select 命令查看表中的记录。如下所示 −

mysql> SELECT * from AutoIncrementTable;

上述查询获得的输出如下所示 −

+----+-------+
| id | name  |
+----+-------+
| 1  | Carol |
| 2  | Bob   |
| 3  | John  |
+----+-------+
3 rows in set (0.00 sec)

现在,表中已插入三条记录,每次 id 加 1。现在更改自动增量,以便下一条记录的 id 从 1000 开始。

更改自动增量的语法如下。

alter table yourTableName auto_increment=startingNumber;

上述语法用于将自动增量更改为 1000。如下所示 −

mysql> alter table AutoIncrementTable auto_increment = 1000;
Query OK, 0 rows impacted (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0

成功更改自动增量后,更多记录将插入表中。如下所示 −

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

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

现在使用 select 语句查看表记录。可以看到第 4 条记录编号从 1000 开始。

mysql> SELECT * from AutoIncrementTable;

以下是输出 −

+------+--------+
| id   | name   |
+------+--------+
| 1    | Carol  |
| 2    | Bob    |
| 3    | John   |
| 1000 | Taylor |
| 1001 | Sam    |
+------+--------+
5 rows in set (0.00 sec)

相关文章