適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
sys.dm_tran_session_transactions動態管理檢視會回傳相關交易與會話的相關資訊。
| 資料行名稱 | 資料類型 | 描述 |
|---|---|---|
session_id |
int | 執行交易的會話標識碼。 |
transaction_id |
bigint | 交易的標識碼。 |
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 |
int | 每個會話的開啟交易數目。 |
pdw_node_id |
int |
適用於:Azure Synapse Analytics、Analytics Platform System (PDW) 此散發節點的標識碼。 |
權限
在 SQL Server 和 SQL 受控執行個體上,需要 VIEW SERVER STATE 權限。
在 Microsoft Fabric 中,查詢 需要成員身份為貢獻者工作區角色或更高特權角色。sys.dm_tran_session_transactions
在 SQL Database [Basic]、[S0] 和 [S1] 服務目標,以及彈性集區中的資料庫,需要伺服器管理員帳戶、伺服器管理員帳戶、Microsoft Entra 管理員帳戶或 ##MS_ServerStateReader##伺服器角色的成員資格。 在所有其他 SQL Database 服務目標上,需要資料庫的 VIEW DATABASE STATE 權限或 ##MS_ServerStateReader## 伺服器角色的成員資格。
SQL Server 2022 及更新版本的權限
需要伺服器上的 VIEW SERVER PERFORMANCE STATE 權限。
備註
透過綁定會話和分散式交易,交易有可能同時在多個會話下執行。 在這種情況下,針對相同的 sys.dm_tran_session_transactions顯示多個數據列,transaction_id針對執行交易的每個會話顯示一個數據列。 因為記錄方式不同,open_transaction_count可能不符sys.dm_exec_sessions......open_transaction_count
透過在自動提交模式下使用多個主動結果集(MARS)執行多個請求,可以在單一會話中同時擁有多個活躍交易。 在這種情況下,針對相同的 sys.dm_tran_session_transactions顯示多個數據列,session_id針對在該會話下執行的每個交易顯示一個數據列。
若要呼叫 Azure Synapse Analytics 或 Analytics Platform System(PDW),請使用名稱 sys.dm_pdw_nodes_tran_session_transactions。 Azure Synapse Analytics 的無伺服器 SQL 集區不支援此語法。