Udostępnij za pomocą


sys.dm_tran_session_transactions (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Dynamiczny sys.dm_tran_session_transactions widok zarządzania zwraca informacje korelacji dla powiązanych transakcji i sesji.

Nazwa kolumny Typ danych Description
session_id int ID sesji, w ramach której trwa transakcja.
transaction_id bigint Identyfikacja transakcji.
transaction_descriptor binary(8) Identyfikator transakcji używany przez SQL Server podczas komunikacji z sterownikiem klienta.
enlist_count int Liczba aktywnych żądań w sesji pracującej nad transakcją.
is_user_transaction bit 1 = Transakcja została zainicjowana na żądanie użytkownika.

0 = Transakcja systemowa.
is_local bit 1 = Transakcja lokalna.

0 = Transakcja rozproszona lub sesja powiązana z rejestrem.
is_enlisted bit 1 = Rozproszona transakcja z podoficerem.

0 = Nie jest to rozproszona transakcja z podopiecznym.
is_bound bit 1 = Transakcja jest aktywna na sesji poprzez sesje powiązane.

0 = Transakcja nie jest aktywna na sesji poprzez sesje powiązane.
open_transaction_count int Liczba otwartych transakcji dla każdej sesji.
pdw_node_id int Dotyczy do: Azure Synapse Analytics, Analytics Platform System (PDW)

Identyfikator węzła, w ramach którego znajduje się ta dystrybucja.

Permissions

W programie SQL Server i usłudze SQL Managed Instance wymagane jest VIEW SERVER STATE uprawnienie.

W Microsoft Fabric, do zapytań sys.dm_tran_session_transactionswymagane jest członkostwo w roliWspółtwórcy lub bardziej uprzywilejowanej roli .

W przypadku celów usługi SQL Database Basic, S0 i S1 oraz baz danych w elastycznych pulach wymagane jest konto administratora serwera , konto administratora firmy Microsoft Entra lub członkostwo w ##MS_ServerStateReader##roli serwera . We wszystkich innych celach usługi SQL Database wymagane VIEW DATABASE STATE jest uprawnienie do bazy danych lub członkostwo w ##MS_ServerStateReader## roli serwera.

Uprawnienia dla programu SQL Server 2022 i nowszych

Wymaga uprawnienia WYŚWIETL STAN WYDAJNOŚCI SERWERA na serwerze.

Uwagi

Dzięki powiązanym sesjom i rozproszonym transakcjom możliwe jest, aby transakcja była realizowana pod więcej niż jedną sesją. W takich przypadkach pokazuje sys.dm_tran_session_transactions wiele wierszy dla tej samej transaction_id, po jednym dla każdej sesji, w której trwa transakcja. Ze względu na różnice w sposobie ich zapisywania, mogą się nie zgadzaćsys.dm_exec_sessions... open_transaction_countopen_transaction_count

Wykonując wiele żądań w trybie automatycznego zatwierdzania z użyciem wielu aktywnych zestawów wyników (MARS), możliwe jest posiadanie więcej niż jednej aktywnej transakcji w jednej sesji. W takich przypadkach pokazuje sys.dm_tran_session_transactions wiele wierszy dla tej samej session_id, po jednym dla każdej transakcji działającej w ramach tej sesji.

Aby dzwonić z Azure Synapse Analytics lub Analytics Platform System (PDW), użyj nazwy sys.dm_pdw_nodes_tran_session_transactions. Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.

  • dynamiczne widoki zarządzania systemu
  • Dynamiczne Widoki Zarządzania i Funkcje Związane z Transakcjami (Transact-SQL)