首页 > 技术分享 > MySQL
收藏

Mysql重置主键自增值,Mysql让自增主键从1开始

04/07 11:06
大潇博客 原创文章,转载请标明出处

Mysql主键设置自增后,自增值会一直按最大值计数,哪怕清空了数据表,再添加数据时,主键依旧从最大值开始


使用以下命令,可以修改主键初试值:

格式:ALTER TABLE 表名 auto_increment = 数字;


例如,如果想要将表 content 的id设置成从1开始

ALTER TABLE content auto_increment = 1;


设置主键从1开始时,需要注意:

在执行前,一定要清空数据,否则这个命令无用。因为一旦有数据,即便是你执行了命令,新insert的数据依然按照当前数据库的最大id来处理。


设置主键自增的起始值,并非1时,不用清空表,我在Mysql5.7中使用InnoDB时,表有大量数据的情况下,主键重置了较大的自增值,仍然有效。


当看到如下提示:Duplicate entry '***' for key 'PRIMARY',说明自增的主键已经存在,可能因为修改过主键的值,且现在自增的值已经和此值相同,导致冲突,此时可通过重置较大的主键值,解决此问题。


打赏

阅读排行

大家都在搜

博客维护不易,感谢你的肯定
扫码打赏,建议金额1-10元
  • 15601023311