自增主键为什么不是连续的?
- auto_increment_increment不为1,自增步长。
- 插入数据时,因为唯一键值已经存在导致插入报错,但自增键值已经累加,并不会因为插入失败而回滚。
- 事务开启后,执行了插入数据,最后事务回滚了,但自增键值已经累加,并不会因为事务回滚而回滚。
- insert select导致的自增键不连续,insert select时不是根据select表数据条数申请自增键的,而是按照1、2、4、8...每次申请2的倍数自增键,直到所有数据都插入成功后,才不会再申请自增键。
感谢您的阅读!如果文章中有任何问题或不足之处,欢迎及时指出,您的反馈将帮助我不断改进与完善。期待与您共同探讨技术,共同进步!