@@TRANCOUNT (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)Warehouse in Microsoft Fabric

Restituisce il numero di istruzioni BEGIN TRANSACTION che si sono verificate nella connessione corrente.

Convenzioni di sintassi Transact-SQL

Sintassi

@@TRANCOUNT  

Nota

Questa sintassi non è supportata da pool SQL serverless in Azure Synapse Analytics.

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Tipi restituiti

integer

Osservazioni:

L'istruzione BEGIN TRANSACTION incrementa @@TRANCOUNT di 1. L'istruzione ROLLBACK TRANSACTION decrementa @@TRANCOUNT fino al valore 0, tranne nel caso dell'istruzione ROLLBACK TRANSACTION savepoint_name, che non ha alcun effetto su @@TRANCOUNT. COMMIT TRANSACTION o COMMIT WORK decrement @@TRANCOUNT di 1.

Esempi

R. Effetti delle istruzioni BEGIN e COMMIT

Nell'esempio seguente vengono illustrati gli effetti delle istruzioni nidificate BEGIN e COMMIT sulla variabile @@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. Effetti delle istruzioni BEGIN e ROLLBACK

Nell'esempio seguente vengono illustrati gli effetti delle istruzioni nidificate BEGIN TRAN e ROLLBACK sulla variabile @@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  

Vedi anche

BEGIN TRANSACTION (Transact-SQL)
COMMIT TRANSACTION (Transact-SQL)
ROLLBACK TRANSACTION (Transact-SQL)
Funzioni di sistema (Transact-SQL)