异常( Duplicate entry '2147483647' for key 'PRIMARY')

测试环境突然蹦出来个这样的异常,有点怪,查了一下代码,发现新来的一个同学将时间戳(1563954847295)当成id入库,后来他把这条数据删掉了。因为数据库id是int(11)自增,时间戳大于int的最大值(INT -2147483648 2147483647),所以下次每次新增的时候id不能再新增,所以每次都是同一个id-2147483647,

解决方案

重设表的自增值:

alter table tableName AUTO_INCREMENT=500;

也可以备份该表数据,truncate table,然后插入数据,完成,但是这样有个问题,如果表有外键,truncate会报错,数据删不掉。

所以就用重设自增值的方法好了!

你可能感兴趣的:(异常( Duplicate entry '2147483647' for key 'PRIMARY'))