@@TRANCOUNT (Transact-SQL)

傳回目前連接的使用中交易數目。

主題連結圖示Transact-SQL 語法慣例

語法

@@TRANCOUNT

傳回類型

integer

備註

BEGIN TRANSACTION 陳述式會遞增 @@TRANCOUNT,遞增量為 1。ROLLBACK TRANSACTION 會將 @@TRANCOUNT 遞減到 0,不過 ROLLBACK TRANSACTION savepoint_name 除外,它不會影響 @@TRANCOUNT。COMMIT TRANSACTION 或 COMMIT WORK 會遞減 @@TRANCOUNT,遞減量為 1。

範例

這個範例是利用 @@TRANCOUNT 來測試應該認可之開啟的交易。

USE AdventureWorks;
GO
BEGIN TRANSACTION;
GO
UPDATE Person.Contact
    SET LastName = UPPER(LastName)
    WHERE LastName = 'Wood';
GO
IF @@TRANCOUNT > 0
BEGIN
    PRINT N'A transaction needs to be rolled back.';
    ROLLBACK TRANSACTION;
END

請參閱

參考

BEGIN TRANSACTION (Transact-SQL)
COMMIT TRANSACTION (Transact-SQL)
ROLLBACK TRANSACTION (Transact-SQL)
系統函數 (Transact-SQL)

其他資源

巢狀交易
預存程序和觸發程序中的回復與認可

說明及資訊

取得 SQL Server 2005 協助