Aracılığıyla paylaş


@@TRANCOUNT (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'te ambarMicrosoft Fabric'te SQL veritabanı

Mevcut bağlantıda gerçekleşen BEGIN TRANSACTION ifadelerinin sayısını döndürür.

Transact-SQL söz dizimi kuralları

Sözdizimi

@@TRANCOUNT  

Uyarı

Bu söz dizimi, Azure Synapse Analytics'teki sunucusuz SQL havuzu tarafından desteklenmez.

Dönüş Türleri

integer

Açıklamalar

BEGIN TRANSACTION ifadesi 1 @@TRANCOUNT artıyor. ROLLBACK IŞLEM indirimleri 0'a @@TRANCOUNT, ancak ROLLBACK TRANSACTION savepoint_name hariç, bu @@TRANCOUNT etkilemez. COMMIT TRANSACTION veya COMMIT WORK azalması @@TRANCOUNT 1.

Örnekler

A. BEGIN ve COMMIT ifadelerinin etkilerini göstermek

Aşağıdaki örnek, iç içe ve BEGINCOMMIT ifadelerin değişken üzerindeki @@TRANCOUNT etkisini göstermektedir.

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. BEGIN ve ROLLBACK ifadelerinin etkilerini göstermek

Aşağıdaki örnek, iç içe ve BEGIN TRANROLLBACK ifadelerin değişken üzerindeki @@TRANCOUNT etkisini göstermektedir.

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  

Ayrıca Bkz.

BAŞLAYIN (Transact-SQL)
İŞLEME İŞLEMI (Transact-SQL)
GERI ALMA İŞLEMI (Transact-SQL)
Sistem İşlevleri (Transact-SQL)