问题
单项选择题
设T1和T2两个事务,它们对数据A的并发操作如下表所示(SLOCKA表示对数据A上S锁,UNLOCKA表示对数据A解锁),对这个并发操作,下面说法正确的是______。
A.T1
B.T2
C.①请求
D.
E.SLOCKA
F.
G.读A=18
H.
I.②
J.请求
K.
L.SLOCKA
M.
N.读A=18
O.③A=A+10 写回A=28
P.
Q.COMMIT
R.
S.UNLOCKA
T.
U.④
V.写回A=28
W.
X.COMMIT
Y.
Z.UNLOCKA
答案
参考答案:C
解析: 事务T1对A上S锁后,事务T2仍能对A上S锁,这样事务 T1的修改就丢失,最后A中的数据是事务T2写回的18,因此为了防止丢失修改,必须在写数据操作之前对其上X锁。