sys.dm_tran_session_transactions (Transact-SQL)

返回关联事务和会话的相关信息。

适用范围:SQL Server(SQL Server 2008 至当前版本),Azure SQL Database。

列名

数据类型

说明

session_id

int

正在运行事务的会话的 ID。

transaction_id

bigint

事务的 ID。

transaction_descriptor

binary(8)

SQL Server 在与客户端驱动程序通信时使用的事务标识符。

enlist_count

int

正在处理事务的会话中的活动请求数。

is_user_transaction

bit

1 = 事务由用户请求启动。

0 = 系统事务。

is_local

bit

1 = 本地事务。

0 = 分布式事务或登记的绑定会话事务。

is_enlisted

bit

1 = 登记的分布式事务。

0 = 非登记的分布式事务。

is_bound

bit

1 = 事务在通过绑定会话的会话中处于活动状态。

0 = 事务在通过绑定会话的会话中处于非活动状态。

open_transaction_count

每个会话的打开的事务数。

权限

要求具有服务器的 VIEW SERVER STATE 权限。

注释

通过绑定会话和分布式事务,一个事务可以运行于多个会话中。 在这种情况下,sys.dm_tran_session_transactions 将对同一 transaction_id 显示多个行,当前运行事务的每个会话对应一行。

通过使用多个活动的结果集 (MARS) 以自动提交模式执行多个请求,一个会话中可以有多个活动事务。 在这种情况下,sys.dm_tran_session_transactions 将对同一 session_id 显示多个行,在该会话中运行的每个事务对应一行。

请参阅

参考

动态管理视图和函数 (Transact-SQL)

与事务有关的动态管理视图和函数 (Transact-SQL)