事务通用模板

-- TRY...CATCH 处理
BEGIN TRY;
-- ========================================
-- 不需要事务处理的T-SQL 批处理
-- ========================================
--  开启事务
      BEGIN TRAN ;
-- ----------------------------------------
-- 这里放置处于事务中的各种处理语句
-- ----------------------------------------
      IF XACT_STATE() = 1 
         COMMIT TRAN ;
      ELSE 
         ROLLBACK TRAN ;
        
END TRY
BEGIN CATCH
-- ========================================
-- 在CATCH 模块中的事务回滚处理
      IF XACT_STATE() <> 0 
         BEGIN
               ROLLBACK TRAN ;

         END ;
END CATCH ;
原文地址:https://www.cnblogs.com/jiangxiaofan/p/3394669.html