@@TRANCOUNT(Transact-SQL)

현재 연결에서 활성화된 트랜잭션 수를 반환합니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

@@TRANCOUNT

반환 형식

integer

주의

BEGIN TRANSACTION 문은 @@TRANCOUNT를 1씩 늘립니다. @@TRANCOUNT에 영향을 주지 않는 ROLLBACK TRANSACTION savepoint_name을 제외한 ROLLBACK TRANSACTION은 @@TRANCOUNT를 0으로 줄입니다. COMMIT TRANSACTION 또는 COMMIT WORK는 @@TRANCOUNT를 1씩 줄입니다.

1. BEGIN 및 COMMIT 문의 영향

다음 예에서는 중첩된 BEGIN 및 COMMIT 문이 @@TRANCOUNT 변수에 주는 영향을 보여 줍니다.

PRINT @@TRANCOUNT
--  The BEGIN TRAN statement will increment the
--  transaction count by 1.
BEGIN TRAN
    PRINT @@TRANCOUNT
    BEGIN TRAN
        PRINT @@TRANCOUNT
--  The COMMIT statement will decrement the transaction count by 1.
    COMMIT
    PRINT @@TRANCOUNT
COMMIT
PRINT @@TRANCOUNT
--Results
--0
--1
--2
--1
--0

2. BEGIN 및 ROLLBACK 문의 영향

다음 예에서는 중첩된 BEGIN TRAN 및 ROLLBACK 문이 @@TRANCOUNT 변수에 주는 영향을 보여 줍니다.

PRINT @@TRANCOUNT
--  The BEGIN TRAN statement will increment the
--  transaction count by 1.
BEGIN TRAN
    PRINT @@TRANCOUNT
    BEGIN TRAN
        PRINT @@TRANCOUNT
--  The ROLLBACK statement will clear the @@TRANCOUNT variable
--  to 0 because all active transactions will be rolled back.
ROLLBACK
PRINT @@TRANCOUNT
--Results
--0
--1
--2
--0