第一范文网 - 专业文章范例文档资料分享平台

数据库期末考试复习题库(非常全面)

来源:用户分享 时间:2025/7/14 7:08:59 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

病毒

5、数据库系统是利用存储在外存上其他地方的 冗余数据 来重建被破坏的数据库。它主要有两种: 后援副本 和 日志文件 。

答案:①冗余数据 三、

简答题

②后援副本

③日志文件

1、什么是事务,事务有哪些特性?

答:事务是DBMS的基本工作单位,它是用户定义的一组逻辑一致的程序序列。它是一个不可分割的工作单位,其中包含的所有操作,要么都执行,要么都不执行。

事务具有4 个特性:原子性(Atomicity )、一致性(consistency )、隔离性( Isolation )和持续性(Durability )。这4 个特性也简称为ACID 特性。 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。

一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。

隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的

数据 对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持续性:持续性也称永久性(Perfnanence ) ,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。 2、事务中的提交和回滚是什么意思?

答:事务中的提交(COMMIT)是提交事务的所有操作。具体说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态。具体地说就是,在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。 3、为什么要设立日志文件?

答:设立日志文件的目的,是为了记录对数据库中数据的每一次更新操作。从而DBMS可以根据日志文件进行事务故障的恢复和系统故障的恢复,并可结合后援

29

副本进行介质故障的恢复。

第11章 并发控制

一、

选择题:

1、.设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。

A.该操作不存在问题

B.该操作丢失修改 C.该操作不能

重复读 D.该操作读“脏”数据 答案:B

T1 ①读A=10 ② ③A=A-5写回 ④

2、设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。

A.该操作不存在问题

B.该操作丢失修改 C.该操作不能重复读

T2 读A=10 A=A-8写回 D.该操作读“脏”数据 答案:C

T1 ①读A=10,B=5 ② ③读A=20,B=5 求和25验证错 T2 读A=10 A=A*2写回

3、设有两个事务T1、T2,其并发操作如下所示,下列评价正确的是 。

A.该操作不存在问题

B.该操作丢失修改 C.该操作不能重复读

30

D.该操作读“脏”数据 答案:D

T1 ①读A=100 A=A*2写回 ② ③ROLLBACK 恢复A=100 读A=10 T2 4、解决并发操作带来的数据不一致性总是普遍采用 。

A.封锁 答案:A

5、若事务T对数据R已经加X锁,则其他事务对数据R 。

A.可以加S锁不能加X锁 锁也可以加X锁

B.不能加S锁可以加X锁 C.可以加S

B.恢复

C.存取控制

D

D.不能加任何锁 答案:D

6、关于“死锁”,下列说法中正确的是 。

A.死锁是操作系统中的问题,数据库操作中不存在 B.在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库

C.当两个用户竞争相同资源时不会发生死锁 D.只有出现并发操作时,才有可能出现死锁 答案:D

7、对并发操作若不加以控制,可能会带来 问题。

A.不安全 答案:D

8、并发操作会带来哪些数据不一致性 。

A.丢失修改、不可重复读、脏读、死锁 B.不可重复读、脏读、死锁

B.死锁

C.死机

D

C.丢失修改、脏读、死锁 D.丢失修改、不可重复读、脏读 答案:D

二、

填空题

1、DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是 机制。 答案:封锁

2、有两种基本类型的锁,它们是 共享锁 和 排它锁 。

31

答案:①共享锁

三、

简答题

②排它锁

1、叙述数据库中死锁产生的原因和解决死锁的方法。答:死锁产生的原因:封锁可以引起死锁。比如事务T1封锁了数据A,事务T2封锁了数据B。T1又申请封锁数据B,但因B被T2封锁,所以T1只能等待。T2又申请封锁数据A,但A已被T1封锁,所以也处于等待状态。这样,T1和T2处于相互等待状态而均不能结束,这就形成了死锁。解决死锁的常用方法有如下三种:(1)要求每个事务一次就要将它所需要的数据全部加锁。(2)预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。(3)允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤消,释放此事务持有的所有的锁,使其他事务能继续运行下去。

2、基本的封锁类型有几种?试叙述它们的含义。

答:基本的封锁的类型有排它锁(“X”锁)和共享锁(“S”锁)两种。 若事务T对数据A加上X锁,则只允许事务T读取和修改数据A,其他事务都不能再对A加任何类型的锁,直到T释放A上的锁。

若事务T对数据A加上S锁,则其他事务可以再对A加S锁,而不能加X锁,直到T释放A上的锁。 3、什么是活锁?

如果事务 Tl 封锁了数据 R ,事务几又请求封锁 R ,于是几等待。几也请求封锁 R ,当 Tl 释放了 R 上的封锁之后系统首先批准了几的请求,几仍然等待。然后几又请求封锁 R ,当几释放了 R 上的封锁之后系统又批准了几的请求 … … 几有可能永远等待,这就是活锁的情形。活锁的含义是该等待事务等待时间太长,似乎被锁住了,实际上可能被激活。

32

数据库期末考试复习题库(非常全面).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c3wg483uicm2ubi97rwvq_8.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top