У меня есть процедура, которая имеет вид ниже
BEGIN TRY
BEGIN TRAN
...transactins A....
BEGIN TRY
.... Transaction B ....
END TRY
BEGIN CATCH
.... Set variables and print messages ....
END CATCH
....Transaction C
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
...Transaction D
END CATCH
Транзакция B выдает ошибку, и из-за этого процесс переходит в состояние uncommitable и выдает следующую ошибку. Я проверил значение XACT_STATE () это -1
Сообщение 3930, уровень 16, состояние 1, процедура xxxxxxxx, строка 70
Текущая транзакция не может быть зафиксирована и не может поддерживать операции записи в файл журнала. Откат транзакции.
Есть ли другой способ преодолеть это, если пропустить транзакцию B и выполнить транзакции C