IF @@TRANCOUNT = 0 PRINT 'No current transaction, autocommit mode (default)'
ELSE IF @@OPTIONS & 2 = 0 PRINT 'Implicit transactions is off, explicit transaction is currently running'
ELSE PRINT 'Implicit transactions is on, implicit or explicit transaction is currently running'
Не мисля, че има начин да се определи дали текущата транзакция е стартирана изрично или имплицитно. И така, този код просто се опитва да отгатне:ако IMPLICIT_TRANSACTIONS е ИЗКЛЮЧЕНО, се приема, че транзакцията е стартирана изрично.
Препратки към MSDN: