Partilhar via


sys.dm_tran_session_transactions (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

A sys.dm_tran_session_transactions vista de gestão dinâmica devolve informação de correlação para transações e sessões associadas.

Nome da coluna Tipo de dados Description
session_id int ID da sessão sob a qual a transação está a decorrer.
transaction_id bigint Identificação da transação.
transaction_descriptor binário(8) Identificador de transação usado pelo SQL Server ao comunicar com o driver cliente.
enlist_count int Número de pedidos ativos na sessão a trabalhar na transação.
is_user_transaction bit 1 = A transação foi iniciada por pedido de um utilizador.

0 = Transação do sistema.
is_local bit 1 = Transação local.

0 = Transação distribuída ou uma transação de sessão vinculada aos praças.
is_enlisted bit 1 = Transação distribuída por praças.

0 = Não foi uma transação distribuída de soldados alistados.
is_bound bit 1 = A transação está ativa na sessão através de sessões vinculadas.

0 = A transação não está ativa na sessão através de sessões vinculadas.
open_transaction_count int O número de transações abertas para cada sessão.
pdw_node_id int Aplica-se a: Azure Synapse Analytics, Analytics Platform System (PDW)

O identificador do nó em que esta distribuição se encontra.

Permissions

No SQL Server e na Instância Gerenciada do SQL, requer VIEW SERVER STATE permissão.

No Microsoft Fabric, é necessária a pertença ao papel de espaçode trabalho Contribuinte ou a um papel mais privilegiado para consultar sys.dm_tran_session_transactions.

No Banco de Dados SQL Basic, S0e S1 objetivos de serviço e para bancos de dados em pools elásticos , a conta de de administrador do servidor, a conta de de administrador do Microsoft Entra ou a associação aode função de servidor ##MS_ServerStateReader## é necessária. Em todos os outros objetivos de serviço do Banco de dados SQL, é necessária a permissão VIEW DATABASE STATE no banco de dados ou a associação à função de servidor ##MS_ServerStateReader##.

Permissões para SQL Server 2022 e posterior

Requer a permissão VIEW SERVER PERFORMANCE STATE no servidor.

Observações

Através de sessões vinculadas e transações distribuídas, é possível que uma transação esteja a correr em mais do que uma sessão. Nesses casos, sys.dm_tran_session_transactions mostra múltiplas linhas para a mesma transaction_id, uma para cada sessão em que a transação está a decorrer. Devido a diferenças na forma como são registadas, open_transaction_count podem não coincidirsys.dm_exec_sessions...open_transaction_count

Ao executar múltiplos pedidos em modo autocommit usando múltiplos conjuntos de resultados ativos (MARS), é possível ter mais do que uma transação ativa numa única sessão. Nesses casos, sys.dm_tran_session_transactions mostra múltiplas linhas para a mesma session_id, uma para cada transação a correr nessa sessão.

Para ligar a partir do Azure Synapse Analytics ou Analytics Platform System (PDW), use o nome sys.dm_pdw_nodes_tran_session_transactions. Essa sintaxe não é suportada pelo pool SQL sem servidor no Azure Synapse Analytics.