Czy muszę użyć bloku try..catch i jawnego wycofania w procedurze SQL Server?

Jeśli koduję procedurę SQL Server (2008r2) i zawijam ją w transakcję, czy muszę jawnie zamknąć ją w bloku try..catch, a następnie jawnie wywołać rollback w bloku catch, czy też wyjdzie i wycofać to samo?

to znaczy.:

Jak to zrobić:

    begin transaction

    begin try
    delete from....

    insert into...
    end try
    begin catch
    rollback transaction
    return
    end catch

    commit transaction

Porównać z:

    begin transaction
    delete from....

    insert into...
    commit transaction

Dziękuję za pomoc.

questionAnswers(3)

yourAnswerToTheQuestion