mysql事务应用

事务用于保证一系列事件全部执行成功,就提交;否则回滚所有事件重新执行。

①开启事务 start transaction 

②运行sql; 
③提交,同时生效\回滚 commit\rollback



例如:张三给李四转账,先从张三账户上减去300,再向李四账户上加上300.这是两件事情,如果第一件事情执行成功,第二件失败,则会出现张三钱少了,李四的却没有。 
所以以上事件要用事务。
create table bankCards(
id int auto_increment primary key,
cdname varchar(15),
cdnumber varchar(55),
cdmoney decimal(10.2)
) engine innodb ;
insert into bankCards values(null,'张三','6012 5456 6698 1145 022',56421.36);
insert into bankCards values(null,'李四','6012 5456 9987 1145 365',556.62);
insert into bankCards values(null,'赵猛','6012 5456 **** 9874 012',91987.32);
-- 开始还钱
start transaction;
update bankCards set cdmoney=cdmoney-300 where cdname='张三';
update bankCards set cdmoney=cdmoney+300 where cdname='李四';
commit;

\rollback;

事务经常用在存储过程中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值