关于 mysql 事务中的自增 id 的疑问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 mysql 事务中的自增 id 的疑问相关的知识,希望对你有一定的参考价值。

参考技术A id 自增,name 为字符串类型

table 依然为空,开启事务后在没有commit的情况下,是没有修改 table 的。

这里将事务 b 直接提交

由于事物 b 提交了,插入了一行数据,id 为 2,所以这里生成 id 是在插入的时候。

这个时候开始提交事物a

事务 a 和 b 都提交成功,上一个事务a的插入的数据项也出现了。

由于事物 c 回滚,事物 d 提交成功,所以 table 中确实是少了一行数据。

自增 id,是在插入的时候就已经生成了,事务并不影响 id 的自增。

如果事务回滚,table 对应的数据行就会缺失,id 也会缺失,自增 id 和事务是独立的,互不影响。

啥,MySQL 的自增 ID 也能用完?

来源:程序猿面试指南

 
   
   
 
学最好的别人,做最好的我们