@@TRANCOUNT(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