@@TRANCOUNT (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Warehouse di Microsoft Fabric

Mengembalikan jumlah pernyataan BEGIN TRANSACTION yang telah terjadi pada koneksi saat ini.

Konvensi sintaks transact-SQL

Sintaksis

@@TRANCOUNT  

Catatan

Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Jenis Kembalian

Integer

Keterangan

Pernyataan BEGIN TRANSACTION bertambah @@TRANCOUNT sebesar 1. Penurunan TRANSAKSI ROLLBACK @@TRANCOUNT menjadi 0, kecuali untuk savepoint_name TRANSAKSI ROLLBACK, yang tidak memengaruhi @@TRANCOUNT. COMMIT TRANSACTION atau COMMIT WORK decrement @@TRANCOUNT oleh 1.

Contoh

J. Memperlihatkan efek pernyataan BEGIN dan COMMIT

Contoh berikut menunjukkan efek yang ditumpuk dan BEGINCOMMIT pernyataan pada @@TRANCOUNT variabel .

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. Memperlihatkan efek pernyataan BEGIN dan ROLLBACK

Contoh berikut menunjukkan efek yang ditumpuk dan BEGIN TRANROLLBACK pernyataan pada @@TRANCOUNT variabel .

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  

Lihat Juga

BEGIN TRANSACTION (Transact-SQL)
TRANSAKSI PENERAPAN (T-SQL)
TRANSAKSI ROLLBACK (Transact-SQL)
Fungsi Sistem (Transact-SQL)