小编Pet*_*ter的帖子

部分回滚不会减少 trancount

假设我有一个打开的 SQL Server 会话,并执行以下操作:

begin tran 

insert into People (Id) values (1)

select @@TRANCOUNT -- Prints 1

save transaction tt

begin tran

select @@TRANCOUNT -- Prints 2

insert into People (Id) values (2)
Run Code Online (Sandbox Code Playgroud)

好的,现在我做了一个:

rollback tran tt

select @@TRANCOUNT -- Prints 2!
Run Code Online (Sandbox Code Playgroud)

我的问题可能很明显:

为什么部分回滚不会减少内部事务增加的@@TRANCOUNT?

要提交更改,我应该执行两个提交命令。恕我直言,似乎并不自然。

sql-server transaction rollback

2
推荐指数
1
解决办法
1987
查看次数

标签 统计

rollback ×1

sql-server ×1

transaction ×1