数据库的隔离级别能以这种角度概括全么?

(一)事务 A 发生了,其它事务一个都别想发生。
(二)事务 A 发生了,可以再有其它事务并行发生,但是事务 A 涉及到的记录,其它事务不许读也不许写。
(三)事务 A 发生了,可以再有其它事务并行发生,但是事务 A 涉及到的记录,其它事务不许写,但可以读。
(四)事务 A 发生了,可以再有其它事务并行发生,但是事务 A 涉及到的记录,其它事务可以写,也可以读。

第一显然是 强制串行化 serializable
第四显然是 读未提交 read uncommited
不过第二第三,我就不太确定。第二对应 读已提交 read commited,第三对应 可重复读 repeatable read ?

因为读已提交和可重复读这两个概念真的让我头大无比,我觉得从我这样的角度去想更清晰明了不是么?

数据库
mysql
后端
2023-07-03 15:20:50
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Potatoes先生

1.不要用模糊的模棱两可的语言去描述一个经过比较严格的定义的概念,事务的隔离级别只给出了不同事务读写(把创建和删除理解为广义上的写操作,或者说这里的读写代表了未修改/修改了访问数据源的状态)应该达到的要求,而没有限制达到要求使用的技术,MVCC多版本并发控制也可以实现其中的某些隔离级别,可它并没有向你理解的那样限制读或者写。
2.四种隔离级别都必须满足的条件是不能脏写,即使是读未提交(读未提交的问题是脏读),但你的理解第四个显然会导致脏写。
3.可串行化隔离级别并不意味着必须完全串行调度。

可以看《数据库系统概念》第六版

已于2023-7-3 16:39:08修改
分享
微博
QQ
微信
回复
2023-07-03 16:39:00
相关问题
数据库如何设置加密级别
331浏览 • 2回复 待解决
mysql 默认隔离级别是REPEATABLE-READ
3653浏览 • 1回复 待解决
数据库中如何判断有有中文?
2644浏览 • 1回复 待解决
数据库操作同步方法
1708浏览 • 1回复 待解决
HarmonyOS 数据库框架
260浏览 • 1回复 待解决
OrmDatabase 数据库问题
3469浏览 • 1回复 待解决
多个数据库,同步数据
1798浏览 • 1回复 待解决
鸿蒙RDB数据库好用吗
2442浏览 • 2回复 已解决
OceanBase数据库特点有哪些?
4265浏览 • 1回复 待解决
后端查询数据库性能问题
3703浏览 • 1回复 待解决
数据中台数据库选择问题
1938浏览 • 1回复 待解决
HarmonyOS 数据库dataORM插入数据失败
99浏览 • 1回复 待解决