@@TRANCOUNT (Transact-SQL)

Возвращает число активных транзакций для текущего соединения.

Значок ссылки на разделСоглашения о синтаксисе в Transact-SQL

Синтаксис

@@TRANCOUNT

Типы возвращаемых данных

integer

Замечания

Инструкция BEGIN TRANSACTION увеличивает значение @@TRANCOUNT на 1, а инструкция ROLLBACK TRANSACTION уменьшает его до 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