SQL Server—事务

作者 : 攻城狮 发布时间: 2023-03-9 共333人阅读

事务:SqlServer中事务的概念就是将多步操作捆绑在一起,要么同时成功,要么同时失败,不允许出现多步操作中部分执行成功、部分执行失败的现象。

应用举例:刘备取款6000(实际上余额只有5000)

要求:使用事务实现,修改余额和添加取款记录两步操作。

begin transaction       --开始事务
declare @myError int = 0
update BankCard set CardMoney = CardMoney - 6000 where CardNo='6225125478544587'
set @myError = @myError + @@ERROR
insert into CardExchange(CardNo,MoneyInBank,MoneyOutBank,ExchangeTime)
values('6225125478544587',0,6000,getdate())
set @myError = @myError + @@ERROR
if @myError = 0
    begin
    commit transaction    --提交事务
    print '取款成功'
    end
else
    begin
    rollback transaction    --回滚事务
    print '取款失败'
    end

/*
transaction:交易 / 办理 / 交流 / 议事录
commit:使作出保证 / 使承担义务 / 犯罪,做错事 / 把...交托给
rollback:回滚
*/

 

1.本站所有资源收集于互联网和用户上传,如有侵权请联系客服删除;
2.本站不保证所提供下载资源的准确性、安全性和完整性,请自行测试;
3.资源仅供学习交流使用,版权归原作者所有,请在下载后24小时之内删除;
4.如用于商业或非法用途实属个人行为,与本站无关,一切后果由用户自负;
5.本站提供的源码、主题模板、插件等资源,都不包含技术服务,请大家谅解;
6.本站所设置的资源售价只是用于赞助,收取费用仅维持本站的日常运营所需;
7.如果您有好的源码或者教程,请至个人中心发布资源,将有积分奖励和额外收入;
8.本站默认解压密码:www.ittiantang.com,如有链接无法下载,请联系管理员处理。

IT天堂 » SQL Server—事务

常见问题FAQ

IT天堂的会员权益只能通过充值获得吗?
您可以通过签到功能获得积分,用积分兑换会员权益。
网站上的VIP资源只能通过充值购买吗?
您可以通过每日签到获得积分,使用积分直接购买VIP资源。

发表评论