Você pode colocar set xact_abort on antes de sua transação para garantir que o sql seja revertido automaticamente em caso de erro.