MySQL--事务
概念理解:
一组操作的集合,向系统一次性提交这组集合,执行同时成功或同时失败
过程:
开启事务,执行事务内部操作,若发生异常,则回滚事务,将已发生的操作回滚撤销,最后提交事务
事务操作:
1、修改事务提交方式
查看/修改事务提交方式:
0:手动提交
1:自动提交
提交事务(手动提交):
commit指令
回滚事务:
rollback指令
2、不修改事务提交方式
事务四大特性(ACID)
原子性:事务是最小的操作单元
一致性:事务完成时,所有数据必须保持一致
隔离性:隔离机制,确保并发事务之间执行不会相互影响
持久性:事务提交或回滚,对数据的修改都是永久的
并发事务问题:
1、脏读:A事务读取到B事务还没有提交的数据
2、不可重复读:一个事务重复读取同一条记录,但得到的数据不同
3、幻读:一个事务按条件查询数据时数据不存在,进行插入操作时数据却存在
事务的隔离级别
第三种为MySQL默认隔离级别
查看/设置事务隔离级别
session(绘画级别):针对当前客户端窗口有效
global:对所有客户端绘画窗口有效
隔离级别越高,数据越安全,效率越低