直接拿下Mysql--事务篇(进阶版)

事务

b60a7714563f4bcba51f1c115858b44e.jpg

 注:回滚事务将会把所有的操作都还原,导致操作同时失败

事务的操作:

事务的操作可以有两种,第一种是关闭掉mysql的自动事务提交(即每个语句执行后直接写进数据库),然后再手动提交。

efe835db09604fbaa84d883d949433f4.jpg

 第二种则是偏向于编程化即直接手动决定事务开始和结束的地方

31c4ffff8f854082b480c5006d00ae3c.jpg

 事务的四大特性(ACID):

3698a11687e446c7a4234ebdb2f39c21.jpg

 事务的并发问题:

80f0573e8a244b9fb79edf73fa73e54d.jpg

脏读:事务A对一条数据进行了更新,但是A的事务并没有提交,此时事务B直接对该数据进行了查询,就是所谓的读到了另外一个事务还没有提交的数据。(两次读数据不一样,B未提交)(事务B的操作影响到了A)

不可重复读:事务B先读取了一条数据,然后事务A对这条数据又进行了更新,此时事务B又对该数据进行了查询得到两次查询的结果不相同,这就叫不可重复读。(两次读数据不一样,B提交了)

幻读:事务B先查询了一条数据发现其并不存在,然后事务A又刚好插入了这条数据,事务B没有查询到数据然后进行新增但是此时提示该数据已经存在

并发问题的解决方案:隔离级别

443bac6b681e49649f9d4a6e417c61f8.jpg

 注:随着事务级别的越高,性能会越差

事务总结

603f5f00268d4afbab3e39ec27178818.jpg

  • 12
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值