《数据库原理与应用》(第三版)第9章 事务与并发控制 基础 习题参考答案

1.试说明事务的概念及四个特征。
答:原子性、隔离性、一致性、持久性。

2.事务处理模型有哪两种?
答:T-SQL事务处理模型、T-SQL事务处理模型。

3.在数据库中为什么要有并发控制?
答:为避免多个事务之间的相互干扰。

4.并发控制的措施是什么?
答:加锁。

5.设有三个事务:T1、T2和T3,其所包含的动作为:
T1:A = A + 2;T2:A = A * 2;T3:A = A - 1
设A的初值为3,若这三个事务并行执行,则可能的调度策略有几种?A的最终结果分别是什么?
答:
T1T2T3:A = 9
T1T3T2:A = 8
T2T1T3:A = 7
T2T3T1:A = 9
T3T1T2:A = 8
T3T2T1:A = 6

5.当某个事务对某段数据加了S锁之后,在此事务释放锁之前,其他事务还可以对此段数据添加什么锁?
答:S锁

6.什么是死锁?预防死锁有哪些方法?
答:相互等待对方释放资源。

7.如何诊断和解除死锁?
答:诊断死锁方法:一般使用超时法和事务等待图法。
解除死锁:通常采用的方法是选择一个处理死锁代价最小的事务,将其撤销,释放此事务所持有的全部锁,使其他事务可以继续运行下去。

8.怎样保证多个事务的并发执行是正确的?
答:遵守两阶段锁协议。

9.一级封锁协议对读和写分别加什么锁?加锁范围分别是什么?能避免哪些干扰?
答:写全程加X锁,读不加锁。能避免丢失修改。

10.二级封锁协议对读和写分别加什么锁?加锁范围分别是什么?能避免哪些干扰?
答:写全程加X锁,读前加S锁,读完释放S锁。能避免丢失修改和不读脏数据。

11.三级封锁协议对读和写分别加什么锁?加锁范围分别是什么?能避免哪些干扰?
答:写全程加X锁,读全程加S锁。能避免丢失修改、不读脏数据和不可重复读。

发布了750 篇原创文章 · 获赞 471 · 访问量 32万+

猜你喜欢

转载自blog.csdn.net/weixin_43336281/article/details/105500526