Try / Поймать блоки новый с SQL Server 2005 и позволяют обрабатывать ошибки, а не просто иметь их откат - Try / Поймать блоки ограничивают вас к одной партии, но, конечно, это спорный вопрос в хранимой процедуре. Если ваши процедуры должны оставаться совместимыми с предыдущими версиями SQL-сервера, вы можете рассмотреть XACT_ABORT, если это поможет, но я бы сказал, что Try / Catch - это путь для дальнейшего развития.