问题 单项选择题

设有两个事务T1和T2,其并发操作序列如下表所示。下列说法中正确的是( )。

A.T1

B.T2

C.读A=100

D.

E.A=A*2写回

F.

G.

H.读A=200

I.ROLLBACK

J.

答案

参考答案:D

解析: 事务的并发执行可能出现3个主要问题; ①丢失更新。即两个事务对同一数据进行读取并修改,先做的那个修改动作被后面的修改掩盖了,又称为丢失修改。 ②对未提交更新的依赖。即事务T1读取了一个事务T2正在更新但尚未提交的数据,这个数据是一个数据库中并不存在的值。也就是俗称的读“脏”数据。 ③不一致的分析。假设事务T1要对账户求和,先读了账户1余额,此时事务T2将钱从账户1转到账户2,事务T2提交后事务T1继续执行,读取账户2的余额加到总数中,显然转走的钱被算了两次。这就是不一致的分析,又称不可重复读。 在本题中,T2在T1更新数据的过程中读取了数据,但之后T1执行了回滚操作,因此T2读到了脏数据。

单项选择题
判断题