sys.dm_tran_database_transactions (Transact-SQL)

Aplica-se a: SQL ServerBase de Dados SQL do AzureAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics endpoint em Microsoft FabricWarehouse em Microsoft FabricSQL database em Microsoft Fabric

A sys.dm_tran_database_transactions vista de gestão dinâmica devolve informações sobre transações ao nível da base de dados.

Nome da coluna Tipo de dados Description
transaction_id bigint ID da transação ao nível da instância, não ao nível da base de dados. É única apenas em todas as bases de dados dentro de uma instância, mas não única em todas as instâncias do servidor.
database_id int ID da base de dados associada à transação.

No Banco de Dados SQL do Azure, os valores são exclusivos em um único banco de dados ou pool elástico, mas não em um servidor lógico.
database_transaction_begin_time datetime Momento em que a base de dados entrou na transação. Especificamente, é o momento do primeiro registo de registo na base de dados para a transação.
database_transaction_type int 1 = Transação de leitura/escrita

2 = Transação apenas de leitura

3 = Transação do sistema
database_transaction_state int 1 = A transação não foi inicializada.

3 = A transação foi inicializada mas não gerou registos de registo.

4 = A transação gerou registos de log.

5 = A transação foi preparada.

10 = A transação foi comprometida.

11 = A transação foi revertida.

12 = A transação está a ser comprometida. (O registo de log está a ser gerado, mas não é materializado nem persistido.)
database_transaction_status int Identificado apenas para fins informativos. Não suportadas. A compatibilidade futura não é garantida.
database_transaction_status2 int Identificado apenas para fins informativos. Não suportadas. A compatibilidade futura não é garantida.
database_transaction_log_record_count bigint Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de registos de registo gerados na base de dados para a transação.
database_transaction_replicate_record_count int Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de registos de log gerados na base de dados para a transação replicada.
database_transaction_log_bytes_used bigint Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de bytes usados até agora no registo da base de dados para a transação.
database_transaction_log_bytes_reserved bigint Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de bytes reservados para uso no registo da base de dados da transação.
database_transaction_log_bytes_used_system int Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de bytes usados até agora no registo da base de dados para transações do sistema em nome da transação.
database_transaction_log_bytes_reserved_system int Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de bytes reservados para uso no registo da base de dados para transações do sistema em nome da transação.
database_transaction_begin_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de sequência do log (LSN) do registo de início da transação no log da base de dados.
database_transaction_last_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

LSN do registo mais recente registado para a transação no registo da base de dados.
database_transaction_most_recent_savepoint_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

LSN do ponto de gravação mais recente da transação no registo da base de dados.
database_transaction_commit_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

LSN do registo de registo de commit para a transação no registo da base de dados.
database_transaction_last_rollback_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

LSN que foi recentemente revertido para. Se não tiver ocorrido rollback, o valor é MaxLSN.
database_transaction_next_undo_lsn numérico(25,0) Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

LSN do próximo registo a desfazer.
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.
database_transaction_first_repl_lsn numérico(25,0) Aplica-se a: Azure Synapse Analytics, Analytics Platform System (PDW)

LSN do primeiro registo de log na transação que necessita de replicação.

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_database_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 VIEW permissão ESTADO DE DESEMPENHO DO SERVIDOR no servidor.

Observações

Para chamar a isto DMV a partir do Azure Synapse Analytics ou Analytics Platform System (PDW), use o nome sys.dm_pdw_nodes_tran_database_transactions Esta sintaxe não é suportada pelo pool SQL serverless no Azure Synapse Analytics.