Sql Server 事务用法

继上一篇AspNetCore执行存储过程 - 点终将连成线 - 博客园 (cnblogs.com)中执行存储过程有个代码的事务:

 

 

 在后台存储过程也可以添加事务

实战用法:

复制代码
Create PROCEDURE [dbo].[Procedure_RestoreData]
    
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;
    begin transaction tran_restore;
    declare @tran_error int;
    set @tran_error = 0;
    begin try
        delete table_name
        set @tran_error = @tran_error + @@error;
        update table *******
        set @tran_error = @tran_error + @@error;
        delete table_name
        set @tran_error = @tran_error + @@error;
    end try
    begin catch        
        print '出现异常,错误编号:' + convert(varchar, error_number()) + ', 错误消息:' + error_message(); 
        set @tran_error = @tran_error + 1;
    end catch
    if (@tran_error > 0)
        begin
            --执行出错,回滚事务
            rollback tran;
            select 0
        end
        else
        begin
            --没有异常,提交事务
            commit tran;
            select 1
        end
END
复制代码

参考SQL Server 事务、异常和游标 - hoojo - 博客园 (cnblogs.com)

 

AspNetCore执行存储过程 - 点终将连成线 - 博客园 (cnblogs.com)
posted @   点终将连成线  阅读(140)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示