MySQL事务常见的面试问答之数据库事务的四大特性

1. 什么是事务

   拿转账来说,涉及到两个账户的更新操作,一个账户更新操作成功是不允许另一个账户更新失败的,这种场景就需要事务来管理保障一致性。

2. 事务的四大特性(ACID)

  • 原子性(Atomicity):组成事务处理的语句形成了一个逻辑单元,不能只执行其中的一部分
  • 一致性(Consistency):在事务处理执行前后,数据库是一致的。
    拿转账来说,假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱相加起来应该还得是5000,这就是事务的一致性。
  • 隔离性(Isolation):一个事务的处理对另一个事务处理没有影响。
    比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
  • 持久性(Durability):事务处理的效果能够永久保存下来。

3. 事务的语法

  • 开始一个事务:begin或start transaction
  • 事务回滚:rollback
  • 事务确认:commit
  • 直接用set来改变MySQL的自动提交模式
       set autcommit=0 禁止自动提交
       set autcommit=1 开启自动提交
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值