栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据库事务隔离级别小记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据库事务隔离级别小记

首先数据库事务特性:ACID,对应的分别是原子性,一致性,隔离性和持久性。

原子性:个人理解,事务内的所有操作,要么都成功,要么都失败,一荣俱荣一损俱损。

一致性:以转账为例子,A账户和B账户的余额,在转账之前和转账之后的总额是不变的。

隔离性:事务与另外一个事务之间是相互隔离的,并且分为四个级别:读未提交,读已提交,可重复读,串行化。

持久性:事务提交后,数据会写入物理存储空间,不做删除和修改处理一直存在。

主要讲隔离级别

读未提交:事务A和事务B,分别建立会话。事务A对数据做修改,但是事务内并未commit,事务B查询是能查询出来的。这种隔离级别会出现,脏读,不可重复读和幻读。

读已提交:事务A和事务B,分别建立会话。事务A对数据做修改,并且做了commit过后,事务B才能查询出来做了变化。这种隔离级别会出现,不可重复读和幻读。

可重复读:事务A和事务B,分别建立会话。事务A对数据做了处理,并且commit了,但是事务B结束之前都是查不出来的。这种隔离级别会出现,幻读。(幻读解释,事务A对数据做新增和删除操作,事务B无法知道,事务B也做新增就会提示主键冲突)。

串行化:事务不能并发创建,必须一个事务完成后,才能开启下一个事务。不是出现脏读,不可重复读,和幻读,但是效率较低。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/878047.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号