--- title: "sys.dm_tran_database_transactions (Transact-SQL)" description: sys.dm_tran_database_transactions (Transact-SQL) author: rwestMSFT ms.author: randolphwest ms.date: "06/09/2017" ms.prod: sql ms.prod_service: "database-engine, sql-database, synapse-analytics, pdw" ms.technology: system-objects ms.topic: "reference" f1_keywords: - "dm_tran_database_transactions" - "sys.dm_tran_database_transactions_TSQL" - "dm_tran_database_transactions_TSQL" - "sys.dm_tran_database_transactions" helpviewer_keywords: - "sys.dm_tran_database_transactions dynamic management view" dev_langs: - "TSQL" ms.assetid: 82a44295-4cbc-4a5b-891a-8ebaf307b8f5 monikerRange: ">=aps-pdw-2016||=azuresqldb-current||=azure-sqldw-latest||>=sql-server-2016||>=sql-server-linux-2017||=azuresqldb-mi-current" --- # sys.dm_tran_database_transactions (Transact-SQL) [!INCLUDE [sql-asdb-asdbmi-asa-pdw](../../includes/applies-to-version/sql-asdb-asdbmi-asa-pdw.md)] Returns information about transactions at the database level. > [!NOTE] > To call this DMV from [!INCLUDE[ssSDWfull](../../includes/sssdwfull-md.md)] or [!INCLUDE[ssPDW](../../includes/sspdw-md.md)], use the name **sys.dm_pdw_nodes_tran_database_transactions**. [!INCLUDE[synapse-analytics-od-unsupported-syntax](../../includes/synapse-analytics-od-unsupported-syntax.md)] |Column name|Data type|Description| |-----------------|---------------|-----------------| |transaction_id|**bigint**|ID of the transaction at the instance level, not the database level. It is only unique across all databases within an instance, but not unique across all server instances.| |database_id|**int**|ID of the database associated with the transaction.| |database_transaction_begin_time|**datetime**|Time at which the database became involved in the transaction. Specifically, it is the time of the first log record in the database for the transaction.| |database_transaction_type|**int**|1 = Read/write transaction

2 = Read-only transaction

3 = System transaction| |database_transaction_state|**int**|1 = The transaction has not been initialized.

3 = The transaction has been initialized but has not generated any log records.

4 = The transaction has generated log records.

5 = The transaction has been prepared.

10 = The transaction has been committed.

11 = The transaction has been rolled back.

12 = The transaction is being committed. (The log record is being generated, but has not been materialized or persisted.)| |database_transaction_status|**int**|[!INCLUDE[ssInternalOnly](../../includes/ssinternalonly-md.md)]| |database_transaction_status2|**int**|[!INCLUDE[ssInternalOnly](../../includes/ssinternalonly-md.md)]| |database_transaction_log_record_count|**bigint**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of log records generated in the database for the transaction.| |database_transaction_replicate_record_count|**int**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of log records generated in the database for the transaction that is replicated.| |database_transaction_log_bytes_used|**bigint**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of bytes used so far in the database log for the transaction.| |database_transaction_log_bytes_reserved|**bigint**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of bytes reserved for use in the database log for the transaction.| |database_transaction_log_bytes_used_system|**int**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of bytes used so far in the database log for system transactions on behalf of the transaction.| |database_transaction_log_bytes_reserved_system|**int**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Number of bytes reserved for use in the database log for system transactions on behalf of the transaction.| |database_transaction_begin_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

Log sequence number (LSN) of the begin record for the transaction in the database log.| |database_transaction_last_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

LSN of the most recently logged record for the transaction in the database log.| |database_transaction_most_recent_savepoint_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

LSN of the most recent savepoint for the transaction in the database log.| |database_transaction_commit_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

LSN of the commit log record for the transaction in the database log.| |database_transaction_last_rollback_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

LSN that was most recently rolled back to. If no rollback has taken place, the value is MaxLSN.| |database_transaction_next_undo_lsn|**numeric(25,0)**|**Applies to**: [!INCLUDE[ssKatmai](../../includes/sskatmai-md.md)] and later.

LSN of the next record to undo.| |pdw_node_id|**int**|**Applies to**: [!INCLUDE[ssSDWfull](../../includes/sssdwfull-md.md)], [!INCLUDE[ssPDW](../../includes/sspdw-md.md)]

The identifier for the node that this distribution is on.| ## Permissions On [!INCLUDE[ssNoVersion_md](../../includes/ssnoversion-md.md)] and SQL Managed Instance, requires `VIEW SERVER STATE` permission. On SQL Database **Basic**, **S0**, and **S1** service objectives, and for databases in **elastic pools**, the [server admin](/azure/azure-sql/database/logins-create-manage#existing-logins-and-user-accounts-after-creating-a-new-database) account, the [Azure Active Directory admin](/azure/azure-sql/database/authentication-aad-overview#administrator-structure) account, or membership in the `##MS_ServerStateReader##` [server role](/azure/azure-sql/database/security-server-roles) is required. On all other SQL Database service objectives, either the `VIEW DATABASE STATE` permission on the database, or membership in the `##MS_ServerStateReader##` server role is required. ## See Also [sys.dm_tran_active_transactions (Transact-SQL)](../../relational-databases/system-dynamic-management-views/sys-dm-tran-active-transactions-transact-sql.md) [sys.dm_tran_session_transactions (Transact-SQL)](../../relational-databases/system-dynamic-management-views/sys-dm-tran-session-transactions-transact-sql.md) [Dynamic Management Views and Functions (Transact-SQL)](~/relational-databases/system-dynamic-management-views/system-dynamic-management-views.md) [Transaction Related Dynamic Management Views and Functions (Transact-SQL)](../../relational-databases/system-dynamic-management-views/transaction-related-dynamic-management-views-and-functions-transact-sql.md)