数据库自增主键用完了会怎样?
程序员文章站
2022-03-28 12:11:17
在mysql中,假设我们定义的主键是 intunsigned,所以最大可以达到2的32幂次方 1 = 4294967295,这时候我们将AUTO_INCREMENT设置为最大值,然后来插入数据会得到一个异常 主要是因为我们在插入数据的时候,因为主键已经是最大值了,所以再次插入数据的时候,拿到的数据还 ......
在mysql中,假设我们定义的主键是 intunsigned,所以最大可以达到2的32幂次方 - 1 = 4294967295,这时候我们将auto_increment设置为最大值,然后来插入数据会得到一个异常
insert into t1 values(null) error code: 1062. duplicate entry '4294967295' for key 'primary'
主要是因为我们在插入数据的时候,因为主键已经是最大值了,所以再次插入数据的时候,拿到的数据还是4294967295,因为这条数据在数据库中已经存在,所以就会报主键冲突的错误。