为什么MySQL不应该从失败/回滚的事务中恢复主键?

为什么MySQL不应该从失败/回滚的事务中恢复主键?,mysql,transactions,rollback,Mysql,Transactions,Rollback,在链接上; 。。需要指出的是,由于失败/回滚事务,在序列中缺少几个自动增量值间隙是可以的 但是。。。 自动递增主键中缺少数字意味着表中容纳最大记录数的容量较小 我的问题是: 1为什么失败的事务不应触发主键值的隐式回滚?还没有坚持;还不是永久性的。换句话说,为什么在失败或回滚的事务上丢失主键值是可以的 2为什么不恢复到原始状态至少应该是MySQL用户的一个选项;开发人员?如果您在同一个表上同时进行多个事务,并且得到较早的自动增量值的事务被回滚,那么自动增量中肯定会有间隙,否则自动增量处理会复杂得

在链接上;

。。需要指出的是,由于失败/回滚事务,在序列中缺少几个自动增量值间隙是可以的

但是。。。 自动递增主键中缺少数字意味着表中容纳最大记录数的容量较小

我的问题是:

1为什么失败的事务不应触发主键值的隐式回滚?还没有坚持;还不是永久性的。换句话说,为什么在失败或回滚的事务上丢失主键值是可以的


2为什么不恢复到原始状态至少应该是MySQL用户的一个选项;开发人员?

如果您在同一个表上同时进行多个事务,并且得到较早的自动增量值的事务被回滚,那么自动增量中肯定会有间隙,否则自动增量处理会复杂得多


不要担心自动增量值用完。这不会发生。

在自动生成的号码用完之前,您将遇到其他问题。