WithCoderWithCoderWithCoder

解决mysql数据库表自增主键id删除记录后主键值不连续的问题

在mysql数据库中,当数据表的主键值设置为自增时,在使用过程中如果删除了最新的一条或多条记录后,新增记录的主键值没有像我们想象的那样紧接着已有的值自增,而是紧接着删除前的最大id值自增.这样就导致主键的值看起来是不连续的.

因此,我们需要通过设置,修改自增id的开始值,从而让自增id按照我们设想的值开始增加.

实现这个功能,可以使用下面的sql语句:

    alter table 表名 auto_increment = 自增id开始值;

举例说明:

想让表student的主键字段id从50开始自增,可以在mysql客户端工具(SQLyog或navicat)中,执行sql语句

    alter table student auto_increment = 50;

注意:

    自增id的最小值,是表中id的最大值+1,即

    1. 如果表中有10条记录,删除id为1,2的记录,通过此功能设置auto_increment = 1,再新增数据时,id从11开始自增,而不是从1开始新增

    2. 但可以将auto_increment = 20,再新增数据时,id从20开始新增

欢迎分享交流,转载请注明出处:WithCoder » 解决mysql数据库表自增主键id删除记录后主键值不连续的问题