Sdílet prostřednictvím


sys.dm_tran_session_transactions (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod analýzy SQL v Microsoft FabricSklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Dynamický sys.dm_tran_session_transactions pohled správy vrací korelační informace pro související transakce a relace.

Název sloupce Datový typ Description
session_id int ID relace, pod kterou transakce běží.
transaction_id bigint Identifikace transakce.
transaction_descriptor binary(8) Identifikátor transakce používaný SQL Serverem při komunikaci s klientským ovladačem.
enlist_count int Počet aktivních požadavků v relaci pracující na transakci.
is_user_transaction bit 1 = Transakce byla zahájena uživatelským požadavkem.

0 = Systémová transakce.
is_local bit 1 = Lokální transakce.

0 = Distribuovaná transakce nebo transakce s omezenou relací.
is_enlisted bit 1 = Distribuovaná transakce zařazených vojáků.

0 = Není to transakce s distribuovaným zařazením.
is_bound bit 1 = Transakce je aktivní na relaci prostřednictvím vázaných relací.

0 = Transakce není aktivní v relaci přes vázané relace.
open_transaction_count int Počet otevřených transakcí pro každou relaci.
pdw_node_id int platí pro: Azure Synapse Analytics, Analytics Platform System (PDW)

Identifikátor uzlu, na který je tato distribuce zapnutá.

Povolení

Na SQL Serveru a službě SQL Managed Instance vyžaduje VIEW SERVER STATE oprávnění.

V Microsoft Fabric je pro dotazování sys.dm_tran_session_transactionsvyžadováno členství v rolipřispěvatele nebo v privilegované roli.

U cílů služby SQL Database Basic, S0 a S1 a pro databáze v elastických fondech se vyžaduje účet správce serveru , účet správce Microsoft Entra nebo členství v ##MS_ServerStateReader##roli serveru . U všech ostatních cílů VIEW DATABASE STATE služby SQL Database se vyžaduje buď oprávnění k databázi, nebo členství v ##MS_ServerStateReader## roli serveru.

Oprávnění pro SQL Server 2022 a novější

Vyžaduje oprávnění ZOBRAZIT STAV VÝKONU SERVERU na serveru.

Poznámky

Díky vázaným relacím a distribuovaným transakcím je možné, že transakce běží pod více než jednou relací. V takových případech zobrazuje sys.dm_tran_session_transactions více řádků pro stejnou transaction_id, jeden pro každou relaci, pod kterou transakce běží. Kvůli rozdílům v tom, jak jsou zaznamenávány, open_transaction_count nemusí sys.dm_exec_sessionsodpovídat .open_transaction_count.

Vykonáním více požadavků v režimu automatického potvrzení s využitím více aktivních sad výsledků (MARS) je možné mít více než jednu aktivní transakci v jedné relaci. V takových případech zobrazuje sys.dm_tran_session_transactions více řádků pro stejnou session_id, jeden pro každou transakci běžící v rámci této relace.

Pro volání z Azure Synapse Analytics nebo Analytics Platform System (PDW) použijte název sys.dm_pdw_nodes_tran_session_transactions. Tato syntaxe není podporována bezserverovým fondem SQL ve službě Azure Synapse Analytics.