关于mysql自增主键

时间:2023-03-08 23:12:17
关于mysql自增主键

对于mysql表(其他数据库没测试过)

如果定义了自增主键,并且手动设置了主键的值,那么当再次自增创建数据的时候,回在设置的主键值的基础上进行自增。

如(id是主键):关于mysql自增主键

起始插入(3,1),而后手动插入(100,2)

当递增id时,下一条数据的id会是 101,所以在手动添加数据的时候,不可以插入特别大的主键

如果错误操作,可以通过下面步骤回退:

1.删除所有特大主键(如果)

2.设置最大主键为(当前实际最大值+1)

  语句如下:alter table table_name auto_increment = 4;

这样就完成恢复了.

建议:还是小心为妙,如果手动更改了自增主键的基础值,并且基础值与主键数据类型最大值特别相近,此后其他人新增了数据,有可能造成超越最大值无法自增造成问题