Sdílet prostřednictvím


@@TRANCOUNT (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsPdW (Analytics Platform System)Sklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Vrátí počet příkazů BEGIN TRANSACTION, které se objevily na aktuálním spojení.

Transact-SQL konvence syntaxe

Syntaxe

@@TRANCOUNT  

Poznámka:

Tato syntaxe není podporována bezserverovým fondem SQL ve službě Azure Synapse Analytics.

Návratové typy

integer

Poznámky

Příkaz BEGIN TRANSACTION @@TRANCOUNT zvyšuje o 1. ROLLBACK TRANSACTION se snižuje @@TRANCOUNT na 0, kromě ROLLBACK TRANSACTION savepoint_name, který @@TRANCOUNT neovlivňuje. COMMIT TRANSACTION nebo COMMIT JOB reduction @@TRANCOUNT o 1.

Examples

A. Zobrazení efektů příkazů BEGIN a COMMIT

Následující příklad ukazuje vliv vnořených a příkazů BEGINCOMMIT na proměnnou @@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  

B. Zobrazení efektů příkazů BEGIN a ROLLBACK

Následující příklad ukazuje vliv vnořených a příkazů BEGIN TRANROLLBACK na proměnnou @@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  

Viz také

ZAČÁTEK TRANSAKCE (Transact-SQL)
transakce potvrzení (Transact-SQL)
transakce vrácení zpět (Transact-SQL)
Systémové funkce (Transact-SQL)