什么是事务:就是一条或者多条sql的单元
事务的四大特性:
原子性:要么同时成功,要么同时失败(不如有三条sql组成的事务其中两条成功
了,第三条没有成功,那么就算失败)
持久性:当事务提交或者回滚,数据库会持久化保存数据
一致性:事务操作前后,数据总量是不变的(有两个sql,一个对张三有500执
行-100,一个对李四有500执行+100,这两个sql在一个事务里面,在事务
执行前张三和李四加起来1000,那么,事务执行后,张三和李四的和也一
个是1000)
隔离性:多个事务之间,互相独立(这个是最复杂的涉及到隔离级别)
事务的隔离级别:多个事务之间隔离的,相互独立的,但是当多个事务操
作同一批数据,则会引发一些问题,设置不同的隔离级别就可以解决这些
问题。
隔离级别:
脏读:一个事务读到另外一个事务未提交的数据(一个事务将张三的数据从原来的
1000改为500,此时没有提交事务,另外一个事务去读取张三的数据就是
1000)
不可重复读:在一个事务中,两次读取的数据不一样。
幻读:一个事务操作DML(增删改),另外一个事务添加了一条数据,则一个事务
查询不到自己的修改
隔离级别:
read uncommitted:读未提交
*产生问题:脏读,不可重复读,幻读
read committed:读已提交
*产生问题:不可重复读,幻读
repetable read:可重复读
*产生问题:幻读
serializable:串行化
*可以解决所有问题
*注意:隔离级别从小到大安全性越来越高,但是效率越来越低
2020-05-21:事务
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...