mysql事务回滚定义_mysql事务回滚机制概述

应用场景:

银行取钱,从ATM机取钱,分为以下几个步骤

1 登陆ATM机,输入密码;

2 连接数据库,验证密码;

3 验证成功,获得用户信息,比如存款余额等;

4 用户输入需要取款的金额,按下确认键;

5 从后台数据库中减掉用户账户上的对应金额;

6 ATM吐出钱;

7 用户把钱拿走。

对于上面的取钱这个事情,如果有一步出现错误的话,那么就会取消整个取钱的动作,但是如果在第5步,系统后台已经把钱减了,但是ATM机没有取出来,那么就应用到mysql中的事务。简单地

来说,就是取钱这7步要么都完成,要么就啥也不做,在数据库中就是这个道理。

事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位,事务回滚是指将该事务已经完成的对数据库的更新操作撤销,在事务中,每个正确的原子

操作都会被顺序执行,直到遇到错误的原子操作。回滚的意思其实即使如果之前是插入操作的话,那么会执行删除之前插入的记录,如果是修改操作的话,那么会执行将update之前的记录还原。

因此,正确的原子操作是真正被执行过的,是物理执行。

事务是由一条或者多条sql语句组成,在事务的操作中,要么这些sql语句都执行,要么都不执行。

事务的ACID特性:原子性,一致性,隔离性,持久性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值