📜  门| GATE CS 2021 |设置 2 |第 42 题

📅  最后修改于: 2021-09-26 03:55:45             🧑  作者: Mango

设 S 是关系数据库系统中三个事务 T1、T2 和 T3 的以下操作时间表:

R2(Y),R1(X),R3(Z),R1(Y)W1(X),R2(Z),W2(Y),R3(X),W3(Z) 

考虑下面的语句 P 和 Q:

  • P: S 是冲突可序列化的。
  • 问:如果 T3 在 T1 完成之前提交,那么 S 是可恢复的。

以下哪个选项是正确的?
(A) P 和 Q 都为真
(B) P 为真,Q 为假
(C) P 为假,Q 为真
(D) P 和 Q 都是假的答案:(乙)
解释:

T1 T2 T3
  R(Y)  
R(X)    
    R(Z)
R(Y)    
W(X)    
  R(Z)  
  W(Y)  
    R(X)
    W(Z)

因此,语句 P 是冲突可序列化的。

如果 T j通过读取 T i写入的数据创建脏读,并且 T j在 T i提交后提交,则调度 S 是可恢复的。

T1 和 T2 必须在 T3 之前提交,因为 T3 脏读取了 T1 和 T2 的值,因此如果T3 在 T1 完成之前提交,那么 S 将无法恢复。

因此陈述 Q 是错误的。

这个问题的测验