sys.dm_tran_session_transactions (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Gibt Korrelationsinformationen für zugehörige Transaktionen und Sitzungen zurück.

Hinweis

Verwenden Sie den Namen sys.dm_pdw_nodes_tran_session_transactions, um dies über Azure Synapse Analytics oder Analytics Platform System (PDW) aufzurufen. Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.

Spaltenname Datentyp BESCHREIBUNG
session_id int ID der Sitzung, unter der die Transaktion ausgeführt wird.
transaction_id bigint ID der Transaktion.
transaction_descriptor binary(8) Transaktionsbezeichner, der von SQL Server bei der Kommunikation mit dem Clienttreiber verwendet wird.
enlist_count int Anzahl der aktiven Anforderungen in der Sitzung für die Transaktion.
is_user_transaction bit 1 = Die Transaktion wurde von einer Benutzeranforderung initiiert.

0 = Systemtransaktion.
is_local bit 1 = Lokale Transaktion.

0 = Verteilte Transaktion oder eine eingetragene gebundene Sitzungstransaktion.
is_enlisted bit 1 = Eingetragene verteilte Transaktion.

0 = Keine eingetragene verteilte Transaktion.
is_bound bit 1 = Die Transaktion ist in der Sitzung über gebundene Sitzungen aktiv.

0 = Die Transaktion ist in der Sitzung nicht über gebundene Sitzungen aktiv.
open_transaction_count Die Anzahl der offenen Transaktionen für jede Sitzung.
pdw_node_id int Gilt für: Azure Synapse Analytics, Analytics Platform System (PDW)

Der Bezeichner für den Knoten, auf dem sich diese Verteilung befindet.

Berechtigungen

Für SQL Server und SQL Managed Instance ist die VIEW SERVER STATE-Berechtigung erforderlich.

Für Standard-, S0- und S1-Dienstziele von SQL-Datenbank sowie für Datenbanken in Pools für elastische Datenbanken ist das Konto des Serveradministrators, des Azure Active Directory-Administrators oder die Mitgliedschaft in der ##MS_ServerStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE STATE-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader##-Serverrolle erforderlich.

Berechtigungen für SQL Server 2022 und höher

Erfordert die VIEW SERVER PERFORMANCE STATE-Berechtigung auf dem Server.

Bemerkungen

Über gebundene Sitzungen und verteilte Transaktionen kann eine Transaktion unter mehreren Sitzungen ausgeführt werden. In diesen Fällen zeigt sys.dm_tran_session_transactions mehrere Zeilen für dieselbe transaction_id an, und zwar eine pro Sitzung, unter der die Transaktion ausgeführt wird.

Durch Ausführen mehrerer Anforderungen im Autocommitmodus mithilfe mehrerer aktiver Resultsets (MARS) ist mehr als eine aktive Transaktion in einer einzigen Sitzung möglich. In diesen Fällen zeigt sys.dm_tran_session_transactions mehrere Zeilen für dieselbe session_id an, und zwar eine pro Transaktion, die unter dieser Sitzung ausgeführt wird.

Siehe auch

Dynamische Verwaltungssichten und Funktionen (Transact-SQL)
Dynamische Verwaltungssichten und -funktionen im Zusammenhang mit Transaktionen (Transact-SQL)