Он будет оставаться открытым до тех пор, пока вы COMMIT
, ROLLBACK
или соединение не закроются и этот спид не будет уничтожен.
Это заблокирует другие процессы и вызовет все виды других проблем.
Как правило, всегда выполняйте проверку, как показано ниже, в своем блоке CATCH
, чтобы убедиться, что вы закрылись чисто.
IF @@TRANCOUNT > 0
ROLLBACK
или
WHILE @@Trancount > 0
BEGIN
ROLLBACK
END