繁体   English   中英

在 SQL 中事务回滚后 ID 会增加

[英]IDs get incremented after Transaction rollback in SQL

我有一个使用 SQL 数据库的 Spring 应用程序。 在应用程序中,我对事务使用回滚。 发生异常时,事务将按原样回滚,并且所有创建的行都将回滚。 但是,ID 会不断增加。

例如,如果它插入ID 5、6、7,然后回滚所有内容,尽管下次ID从8开始回滚。我希望它从5开始。

有没有办法处理这个问题,以便 ID 计数器也回滚? 这在 NoSQL 数据库中可行吗?

像 SEQUENCE 或 IDENTITY 这样的自动增量永远不会重新生成,因为其他一些会话可以在连续性中采用新值

这是 SQL 标准,每个 RDBMS 都具有相同的行为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM