如何在mysql中重置表的主键?
mysqlmysqli database
重置表的主键意味着将auto_increment属性重置为1。重置表主键的语法如下。
alter table yourTableName auto_increment = 1;
为了理解,让我们创建一个表 −
mysql> create table ResetPrimaryKey −> ( −> Id int auto_increment, −> PRIMARY KEY(Id) −> ); Query OK, 0 rows affected (0.59 sec)
向表中插入一些记录。插入记录的查询如下 −
mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.18 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.15 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.09 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.09 sec)
现在您可以借助 select 语句显示所有记录。查询如下 −
mysql> select *from ResetPrimaryKey;
以下是仅显示 ID(即主键)的输出:
+----+ | Id | +----+ | 1 | | 2 | | 3 | | 4 | +----+ 4 rows in set (0.00 sec)
以下是使用 alter − 重置表主键的查询
mysql> alter table ResetPrimaryKey auto_increment = 1; Query OK, 0 rows impacted (0.21 sec) Records: 0 Duplicates: 0 Warnings: 0
用于检查我们是否已成功添加 auto_increment 属性的查询:
mysql> desc ResetPrimaryKey;
以下是输出 −
+-------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | +-------+---------+------+-----+---------+----------------+ 1 row in set (0.11 sec)