好文档 - 专业文书写作范文服务资料分享网站

数据库系统原理(软件)5版PPT第10章

天下 分享 时间: 加入收藏 我要投稿 点赞

不可重复读(续) 例如:

T1 ① R(A)=50 R(B)=100 T2 ?T1读取B=100进行运算 ?T2读取同一数据B,对其进行修改后将B=200写回数据R(B)=100 B←B*2 库。 ?T1为了对读取值校对重读B,B已为200,与第一次读取值不一致 求和=150 ② W(B)=200 ③ R(A)=50 R(B)=200 求和=250 (验算不对) 不可重复读 An Introduction to Database System 不可重复读(续) (2)事务T1按一定条件从数据库中读取了某些数据记录后,

事务T2删除了其中部分记录,当T1再次按相同条件读取数据时,发现某些记录神秘地消失了。

(3)事务T1按一定条件从数据库中读取某些数据记录后,事务T2插入了一些记录,当T1再次按相同条件读取数据时,发现多了一些记录。

后两种不可重复读有时也称为幻影现象(Phantom Row)

An Introduction to Database System 3. 读“脏”数据 读“脏”数据是指:

?事务T1修改某一数据,并将其写回磁盘 ?事务T2读取同一数据后,T1由于某种原因被撤销 ?这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致

?T2读到的数据就为“脏”数据,即不正确的数据

An Introduction to Database System 读“脏”数据(续) 例如

T1 ① R(C)=100 C←C*2 W(C)=200 ② R(C)=200 T2 ?T1将C值修改为200,T2

读到C为200 ?T1由于某种原因撤销,其修改作废,C恢复原值100 ?这时T2读到的C为200,

③ ROLLBACK 与数据库内容不一致,就是“脏”数据 C恢复为100 读“脏”数据 An Introduction to Database System 并发控制概述(续) ?数据不一致性:由于并发操作破坏了事务的隔离性

?并发控制就是要用正确的方式调度并发操作,使一个用户事务的执行不受其他事务的干扰,从而避免造成数据的不

一致性

?对数据库的应用有时允许某些不一致性,例如有些统计工作涉及数据量很大,读到一些“脏”数据对统计精度没什么影响,可以降低对一致性的要求以减少系统开销 ?参见爱课程网11.1节动画《并发操作带来的数据不一致性》

An Introduction to Database System

数据库系统原理(软件)5版PPT第10章

不可重复读(续)例如:T1①R(A)=50R(B)=100T2?T1读取B=100进行运算?T2读取同一数据B,对其进行修改后将B=200写回数据R(B)=100B←B*2库。?T1为了对读取值校对重读B,B已为200,与第一次读取值不一致求和=150②W(B)=200③R(A)=50R(B)=200
推荐度:
点击下载文档文档为doc格式
6pibn7xf1k4x67j2pwjr92i2p9mf5d01doc
领取福利

微信扫码领取福利

微信扫码分享