当前位置: 代码迷 >> 综合 >> 报错 1062:Duplicate entry '4294967295' for key 'PRIMARY'
  详细解决方案

报错 1062:Duplicate entry '4294967295' for key 'PRIMARY'

热度:97   发布时间:2024-01-18 00:14:33.0

报错 1062:Duplicate entry '4294967295' for key 'PRIMARY'

4294967295:是2的32次方=4294967296(无符号),带符号再除以2,负数比正数多一个

产生原因:


id自增已达上限,再插入数据也只能插入这个id值,所以才会冲突,改成bigint类型即可


解决办法:

1:重新初始化自增起始值:

删除最大编号的记录后,该编号不可重用。

可在建表时可用“AUTO_INCREMENT=n”选项来指定一个自增的初始值。

可用alter table table_name AUTO_INCREMENT=n命令来重设自增的起始值。


MySQL数据库修改自动递增值

?
alter table tablename auto_increment=num

其中tablename为表的名称,num为要设置的新的自动递增值,此时再Insert一条数据,自动递增值即为num,不过num必须要大于等于现在已有的自动递增值,否则SQL语句会执行成功,但是实际上不起作用。


2:id的数据类型改为bigin类型


  相关解决方案