一个进程中有多少事务



我在sys.sysprocessesopen_tran列的含义有问题。它返回一些进程的数字2,但我想知道一个进程如何可以有两个开放的事务?

是否可以举例说明一个进程可以有两个开放的事务?

嵌套事务将增加该计数器。

下面的脚本将演示这一点:
select open_transaction_count
from sys.dm_exec_sessions
where session_id = @@SPID;
begin tran;
select open_transaction_count
from sys.dm_exec_sessions
where session_id = @@SPID;
begin tran;
select open_transaction_count
from sys.dm_exec_sessions
where session_id = @@SPID;
rollback tran;

请注意,您不应该使用sys.sysprocesses,因为它已被弃用。使用sys.dm_exec_sessionssys.dm_exec_connections代替。

相关内容

  • 没有找到相关文章

最新更新