sys.dm_tran_session_transactions(Transact-SQL)
연결된 트랜잭션 및 세션에 대한 상관 관계 정보를 반환합니다.
열 이름 |
데이터 형식 |
설명 |
---|---|---|
session_id |
int |
트랜잭션을 실행하고 있는 세션의 ID입니다. |
transaction_id |
bigint |
트랜잭션 ID입니다. |
transaction_descriptor |
binary(8) |
SQL Server에서 클라이언트 드라이버와 통신할 때 사용하는 트랜잭션 식별자입니다. |
enlist_count |
int |
트랜잭션에서 작동 중인 세션의 활성 요청 수입니다. |
is_user_transaction |
bit |
1 = 사용자 요청에 의해 시작된 트랜잭션 0 = 시스템 트랜잭션 |
is_local |
bit |
1 = 로컬 트랜잭션 0 = 분산 트랜잭션 또는 참여한 바운드 세션 트랜잭션 |
is_enlisted |
bit |
1 = 참여한 분산 트랜잭션 0 = 참여한 분산 트랜잭션 아님 |
is_bound |
bit |
1 = 바운드 세션을 통해 세션에서 활성화된 트랜잭션 0 = 바운드 세션을 통해 세션에서 활성화되지 않은 트랜잭션 |
사용 권한
서버에 대한 VIEW SERVER STATE 권한이 필요합니다.
주의
바운드 세션 및 분산 트랜잭션을 통해 둘 이상의 세션에서 트랜잭션을 실행할 수 있습니다. 이 경우 sys.dm_tran_session_transactions는 트랜잭션이 실행되고 있는 각 세션에 대해 하나씩 동일한 transaction_id에 대한 여러 개의 행을 표시합니다.
MARS(Multiple Active Result Sets)를 사용하여 자동 커밋 모드에서 여러 개의 요청을 실행하면 단일 세션에 둘 이상의 활성 트랜잭션이 있을 수 있습니다. 이 경우 sys.dm_tran_session_transactions는 해당 세션에서 실행되고 있는 각 트랜잭션에 대해 하나씩 동일한 session_id에 대한 여러 개의 행을 표시합니다.