SQL Code Guard и откат вложенных транзакций?

У меня есть хранимая процедура, которая может быть вызвана из транзакции. Когда есть исключение, я хочу откатить транзакцию (транзакция верхнего уровня). Я хотел бы использовать что-то вроде этого:

...procedure definition...
BEGIN

    BEGIN TRY

        --work&logic

    END TRY

    BEGIN CATCH 
        -- An error occurred!
        IF @@TRANCOUNT > 0
            ROLLBACK
    END CATCH
END

Суть в том, что SQL Code Guard сообщает об этом предупреждение EI020 - ROLLBACK TRANSACTION без BEGIN TRANSACTION. Есть ли способ написать это правильно?

0 ответов

Другие вопросы по тегам