MySQL6-事务

一、定义

image-20200728112416539

提交事务,才能执行语句 commit;

回滚事务,则不执行语句 rollback;

开启事务:start transaction

回滚:重新开始的意思

image-20200728102524380

undo log 恢复之前状态

image-20200728102953522

二、使用

–默认情况下mysql是开启了事务的

– 隐式事务(默认)

show variables like ‘%autocommit%’(自动提交)

image-20200728113344063

– 显示事务(需要手动提交)

set autocommit = 0

show variables like ‘%autocommit’

start transaction;

insert into balance values(4,‘李四’,490);

commit;

image-20200728112119490

有一条语句失败,事务都会失败,事务会自动回滚 userme是错误的

开启事务也可以用begin

image-20200728113858730

三、事物的隔离级别

加入锁(serializable),不可并发,其他线程会进行等待

0001=1;0010=2;0100=4;1000=8

image-20200728114336962

1.只关心当前窗口的隔离级别就好

2.脏读:可以读到其他窗口回滚后的数据

不可重复读:读的过程中有别的操作,两次读的数据就会不一样

可重复读:只读到其他窗口操作前的数据(默认隔离级别)避免不可重复读和脏读

幻读:读到其他窗口增加的数据

image-20200728112054608

image-20200728115311263

  • 练习:

自行联系

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值