MySQL中的自增主键 ID自增到最大,使用完id会发生什么,怎么办?

背景

之前的学习和实践上了解到的是:

SQL插入异常,主键冲突错误,因为自增ID达到上限后,再申请时它的值不会改变,继续插入数据会导致报主键冲突错误

/* SQL Error (1062): Duplicate entry '2147483647' for key 'PRIMARY' */

但我在偶然中发现,还会有这个错误信息,读取自增ID失败。

/* SQL Error (1467): Failed to read auto-increment value from storage engine */

测试过程

于是产生了进一步实验的想法,以下是操作过程:
本次测试环境MySQL 5.7.22

创建表,自增ID

CREATE TABLE `tb_id_incr` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` INT(11) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB;

场景一:测试自增ID已经达到最大值

  • 第1步:测试,直接让表记录自增ID达到最大值:
INSERT INTO `tb_id_incr` (`id`, `name`) VALUES ('2147483647'
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值