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 が OFF の場合、トランザクションは明示的に開始されたと見なされます。
MSDN リファレンス: