BEGIN TRY BEGIN TRANSACTION
BEGIN
BEGIN TRY
BEGIN TRANSACTION;
--Statements
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION;
DECLARE @ErrorMessage NVARCHAR(4000);
DECLARE @ErrorSeverity INT;
DECLARE @ErrorState INT;
SELECT @ErrorMessage = ERROR_MESSAGE()
,@ErrorSeverity = ERROR_SEVERITY()
,@ErrorState = ERROR_STATE();
RAISERROR (
@ErrorMessage
,@ErrorSeverity
,@ErrorState
);
END CATCH;
END;