如右图所示并发调度,假设事务T1、T2执行前数据项X、Y初值为X=100,Y=200。该调度执行完成后,X、Y值为( );此类不一致性称为(请作答此空)。

- A.丢失修改
- B.读脏数据
- C.不可重复读
- D.破坏事务原子性
正确答案及解析
正确答案
A
解析
本题考查并发调度知识。事务并发执行能够充分利用系统资源,提高系统吞吐量。并发事务执行,可能会因为冲突而产生数据不一致。根据调度语句计算运行结果,是理解并发事务执行过程和对不一致性认识所必须。根据上述调度,事T1前三句执行后,A值70写入缓冲区中(可理解为写入了数据库中)X数据位;随后T2两句将X、Y值读入变量A(=70)、B(=200)中;之后T1将B值230写入数据库中Y数据位;再之后T2将B值(=270)写入数据库中Y数据位。上述调度执行后,X=70,Y=270。多个事务并发执行,正确必要条件是其执行结果与某一种串行执行结果相同。上述两个事务串行执行过程为T1执行完后执行T2或T2执行完后执行T1,即T1→T2:X=70,Y=300和T2→T1:X=70,Y=330。上述并发调度结果与任一串行结果都不同,故并发执行产生了数据不一致。该调度中事务T1对Y修改被T2所覆盖,未能体现T1对Y曾进行过修改,即T1对Y修改丢失了,故该不一致性属于丢失修改。
你可能感兴趣的试题

-
- A.V(S2)和P(S4)
- B.P(S2)和V(S4)
- C.P(S2)和P(S4)
- D.V(S2)和V(S4)
- 查看答案

-
- A.V(S1)P(S2)和V(S3)
- B.P(S1)V(S2)和V(S3)
- C.V(S1)V(S2)和V(S3)
- D.P(S1)P(S2)和V(S3)
- 查看答案

-
- A.P(S4)和V(S4)V(S5)
- B.V(S5)和P(S4)P(S5)
- C.V(S3)和V(S4)V(S5)
- D.P(S3)和P(S4)V(P5)
- 查看答案

-
- A.P(S3)和V(S4)V(S5)
- B.V(S3)和P(S4)P(S5)
- C.P(S3)和P(S4)P(S5)
- D.V(S3)和V(S4)V(S5)
- 查看答案

-
- A.P(S2)和P(S4)
- B.P(S2)和V(S4)
- C.V(S2)和P(S4)
- D.V(S2)和V(S4)
- 查看答案