[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc

上传人:outsidejudge265 文档编号:506852 上传时间:2018-11-29 格式:DOC 页数:19 大小:54KB
下载 相关 举报
[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc_第1页
第1页 / 共19页
[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc_第2页
第2页 / 共19页
[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc_第3页
第3页 / 共19页
[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc_第4页
第4页 / 共19页
[计算机类试卷]软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷5及答案与解析.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷 5及答案与解析 1 事务的 ACID性质中,关于原子性 (atomicity)的描述正确的是 (1)。 ( A)指数据库的内容不出现矛盾的状态。 ( B)若事务正常结束,即使发生故障,更新结果也不会从数据库中消失。 ( C)事务中的所有操作要么都执行,要么都不执行。 ( D)若多个事务同时进行,与顺序实现的处理结果是一致的。 2 关于事务的故障与恢复,下列描述正确的是 (2)。 ( A)事务日志用来记录事务执行的频度 ( B)采用增量备份, 数据的恢复可以不使用事务日志文件 ( C)系统故障的恢复只需进行重做 (Redo)操

2、作 ( D)对日志文件设立检查点目的是为了提高故障恢复的效率 3 一级封锁协议解决了事务的并发操作带来的 (3)不一致性的问题。 ( A)数据丢失修改 ( B)数据不可重复读 ( C)读脏数据 ( D)数据重复修改 4 (4)能保证不产生死锁。 ( A)两段锁协议 ( B)一次封锁法 ( C) 2级封锁法协议 ( D) 3级封锁协议 5 (5),数据库处于一致性状态。 ( A)采用静态副本恢复后 ( B)事务执行过程中 ( C)突然断电后 ( D)缓冲区数据写入数据库后 6 一个事务执行过程中,其正在访问的数据被其他事务所修改,导致处理结果不正确,这是由于违背了事务的 (6)而引起的。 ( A

3、)原子性 ( B)一致性 ( C)隔离性 ( D)持久性 7 在 SQL语言中事务结束的命令是 (7)。 ( A) ENDTRANSACTION ( B) COMMIT ( C) ROLLBACK ( D) COMMIT或 ROLLBACK 8 对事务回滚的正确描述是 (8)。 ( A)将该事务对数据库的修改进行恢复 ( B)将事务对数据库 的更新写入硬盘 ( C)跳转到事务程序的开头重新执行 ( D)将事务中修改的变量值恢复到事务开始时的初值 9 对事务日志的正确描述是 (9)。 ( A)事务日志记录了对数据库的所有操作 ( B)事务日志必须严格按服务数据库进行修改的时间次序记录 ( C)事

4、务日志文件应该与数据库文件放在同一存储设备上 ( D)事务日志的主要目的是应用于审计 10 遵循两段锁协议的事务程序能够解决并发事务对数据库操作的不一致性不包括: (10)。 ( A)丢失修改 ( B)不可重复读 ( C)读脏数据 ( D)不可重复写 11 介质故障恢复需采取以下操作其操作步骤是 (11)。 装载数据备份 执行 Redo操作 执行 Undo操作 ( A) - - ( B) - - ( C) - - ( D) - - 12 “一旦事务成功提交,其对数据库的更新操作将永久有效,即使数据库发生故障 ”,这一性质是指事务的 (12)。 ( A)原子性 ( B)一致性 ( C)隔离性 (

5、 D)持久性 13 在事务处理的过程中, DBMS把事务开始、事务结束及对数据库的插入、删除和修改的每一次 操作写入 (13)文件。 ( A)日志 ( B)目录 ( C)用户 ( D)系统 14 输入数据违反完整性约束导致的数据库故障属于 (16)。 ( A)事务故障 ( B)系统故障 ( C)介质故障 ( D)网络故障 15 “一个事务中的诸操作要么都做,要么都不做 ”,这一性质是指事务的 (17)。 ( A)原子性 ( B)一致性 ( C)隔离性 ( D)持久性 16 若数据 A持有事务 T1所加的排他锁,那么其他事务对数据 A(18)。 ( A)加共享锁成功,加排他锁失败 ( B)加排他

6、锁成功,加共享锁失败 ( C)加共享锁、加排他锁都成功 ( D)加共享锁、加排他锁都失败 17 当事务程序执行回滚指令时,事务进入 (19)状态。 ( A)提交 ( B)中止 ( C)活动 ( D)失败 18 火车售票点 T1、 T2分别售出了两张 2007年 10月 20日到北京的硬卧票,但数据库里的剩余票数却只减了两张,造成数据的不一致,原因是 (20)。 ( A)系统信息显示出错 ( B)丢失了某售票点修改 ( C)售票点重复读数据 ( D)售票点读了 “脏 ”数据 19 事务故障恢复的描述,正确的是 (21)。 ( A)事务故障 的恢复 DBA必须参与 ( B)事务故障的恢复需要数据库

7、复本 ( C)事务故障的恢复只需要日志,不需 DBA参与 ( D)事务故障的恢复需要日志和数据库复本 20 关于备份策略的描述,正确的是 (22)。 ( A)静态备份应经常进行 ( B)动态备份适合在事务请求频繁时进行 ( C)数据更新量小时适合做动态备份 ( D)海量备份适合在事务请求频繁时进行 21 若系统中存在一个等待事务集 (T0, T1, T2, , Tn),其中 T0正等待被 T1锁住的数据项 A1, T1正等待被 T2锁住的数据项 A2, , Tn-1正等待 被 Tn锁住的数据项 An, Tn正等待被 T0锁住的数据项 A0,则系统处于 (31)的工作状态。 ( A)并发处理 (

8、 B)封锁 ( C)循环 ( D)死锁 22 (32)引起的数据库异常,其破坏性最大。 ( A)事务故障 ( B)系统故障 ( C)介质故障 ( D)病毒引起故障 23 数据库系统由数据库、 (3)和硬件等组成,数据库系统是在 (4)的基础上发展起来的。数据库系统由于能够减少数据冗余,提高数据独立性,并集中检查 (5),十几年来获得了广泛的应用。 ( A)操作系统 ( B)文件系统 ( C)编译系 统 ( D)应用程序系统 ( E)数据库管理系统 ( A)操作系统 ( B)文件系统 ( C)编译系统 ( D)应用程序系统 ( E)数据库管理系统 ( A)数据完整性 ( B)数据层次性 ( C)

9、数据操作性 ( D)数据兼容性 26 建立一个供应商、零件数据库。其中 “供应商 ”表 S(Sno, Sname, Zip, City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为: Sno(Sname , Zip, City), ZipCity 。 “零件 ”表 P(Pno, Pname, Color, Weight, City),表示零件号、零件名、颜色、重量及产地。表 S与表 P之间的关系SP(Sno, Pno, Price, Qty)表示供应商代码、零件号、价格、数量。 a “供应商 ”表 S属于 (17)。 b若要求供应商名不能取重复值,关系的主码是 Sn

10、o。请将下面的 SQL语句空缺部分补充完整。 CREATE TABLE S(Sno CHAR(5), Sname CHAR(30) (18), Zip CHAR(8), City CHAR(20) (19) ); c查询供应 “红 ”色零件,价格低于 500,且数量大于 200的供应商代码、供应商名、零件号、价格及数量的 SQL语句如下: SELECT Sno, Sname, Pno, Price, Qty FROM S, SP WHERE Pno IN(SELECT Pno FROM P WHERE (20) ) AND (21); ( A) 1NF ( B) 2NF ( C) 3NF (

11、D) BCNF ( A) NOT NULL ( B) UNIQUE ( C) PRIMARY KEY(Sno) ( D) PRIMARY KEY(Sname) ( A) NOT NULL ( B) NOT NULL UNIQUE ( C) PRIMARY KEY(Sno) ( D) PRIMARY KEY(Sname) ( A) SP.Price 500 ( B) SP.Qty 200 ( C) SP.Price 500 AND SP.Qty 200 ( D) Color=红 ( A) SP.Price 500 ( B) SP.Qty 200 ( C) SP.Price 500 AND SP.

12、Qty 200 ( D) Color=红 软件水平考试(中 级)数据库系统工程师上午(基础知识)试题章节练习试卷 5答案与解析 1 【正确答案】 C 【试题解析】 数据库管理系统运行的基本工作单位是事务,事务是用户定义的一个数据库操作序列,这些操作序列要么全做,要么全不做,是一个不可分割的工作单位。事务具有以下特性。 (1)原子性 (Atomicity):数据库的逻辑工作单位。 (2)一致性 (Consistency):使数据库从一个一致性状态变到另一个一致性状悉。 (3)隔离性 (Isolation):不能被其他事务干扰。 (4)持续性 (永久性 )(Durability): 一旦提交,改变

13、就是永久性的。事务通常以 BEGIN TRANSACTION(事务开始 )语句开始,以 COMMIT 或 ROLLBACK语句结束。 COMMIT 称为 “事务提交语句 ”,表示事务执行成功地结束。 ROLLBACK称为 “事务回退语句 ”,表示事务执行不成功地结束。从终端用户来看,事务是一个原子,是不可分割的操作序列。事务中包括的所有操作要么都做,要么都不做 (就效果而言 )。事务不应该丢失或被分割完成。在多用户共享系统中,许多事务可能同时对同一数据进行操作,称为 “并发操作 ”,此时数据库管理系统的并发控制子系统负责协调 并发事务的执行,保证数据库的完整性不受破坏,同时避免用户得到不正确的

14、数据。 2 【正确答案】 D 【试题解析】 数据库系统出现故障的主要几大类: (1)事务内部的故障。该故障有的是可以通过事务程序本身发现,也有的是非预期的,不能由事务程序处理的。 (2)系统故障。是指造成系统停止运转的任何事件,使得系统要重新启动。要对该故障进行恢复,则需要进行重做 (Redo)和撤销 (Uudo)操作。 (3)介质故障。是指外存故障,如磁盘损坏、磁头碰撞等等。这种故障一般发生的可能性小得多,但破坏性最大。恢复机制涉及的两个 关键问题是:如何建立冗余数据,如何利用这些冗余数据实施数据库恢复。建立冗余数据最常用的技术是数据转储和登录日志文件。事务日志主要是用来记录事务对数据库的更

15、新操作的文件。转储可以分为海量转储和增量转储两种方式。海量转储是指每次转储全部数据库。增量转储则指每次只转储上一次转储后更新过的数据,从恢复的角度来看,使用海量转储得到的后备副本进行恢复一般说来会更方便些。但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效。不过它恢复是要联用事务日志文件一起来恢复。在恢复技术中,为了解决浪费大量时间在系统恢复 中,于是就产生了具有检查点的恢复技术。这种技术在日志文件中增加一类新的记录 检查点记录,增加一个重新开始文件,并让恢复子系统在登录日志文件期间动态维护日志。 3 【正确答案】 A 【试题解析】 数据库的并发操作会带来一些问题,例如丢失更新问

16、题,不一致分析问题 (读过时的数据 ),依赖于未提交更新的问题 (读了 “脏 ”数据 )。这三个问题需要 DBMS 的并发控制子系统来解决。处理并发控制的主要方法是采用封锁技术。有两种封锁: X封锁和 S 封锁。 (1)排他型封锁 (简称 X封锁 ):其含义是如果事务T 对数据 A(可以是数据 项、记录、数据集以至整个数据库 )实现了 X封锁,那么只允许事务 T读取和修改数据 A,其他事务要等事务 T解除 X封锁以后,才能对数据 A实现任何类型的封锁。可见 X封锁只允许一个事务独锁某个数据,具有排他性。 (2)共享型封锁 (简称 S 封锁 ): X封锁只允许一个事务独锁和使用数据,要求太严。需

17、要适当从宽,例如可以允许并发读,但不允许修改,这就产生了 S 封锁概念。 S封锁的含义是如果事务 T 对数据 A实现了 S封锁,那么允许事务 T读取数据 A,但不能修改数据 A,在所有 S 封锁解除之前决不允许任何事务对数据 A实现 X封锁。在多个事务并发执行的系 统中,主要采取封锁协议来进行处理。 (1)一级封锁协议:事务 T 在修改数据 R之前必须先对其加 X封锁,直到事务结束才释放。一级封锁协议可防止丢失修改,并保证事务 T 是可恢复的。但不能保证可重复读和不读 “脏 ”数据。 (2)二级封锁协议:一级封锁协议加上事务 T 在读取数据 R之前先对其加 S 锁,读完后即可释放 S 锁。二级

18、封锁协议可防止丢失修改,还可防止读 “脏 ”数据。但不能保证可重复读。 (3)三级封锁协议:一级封锁协议加上事务 T 在读取数据 R之前先对其加 S锁,直到事务结束才释放。三级封锁协议可防止丢失修改、防止读 “脏 ”数据与防止数据 重复读。 (4)两段锁协议:所有事务必须分两个阶段对数据项加锁和解锁。其中扩展阶段是在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁;收缩阶段是在释放一个封锁之后,事务不能再申请和获得任何其他封锁。若并发执行的所有事务均遵守两段封锁协议,则对这些事务的任何并发调度策略都是可串行化的。遵守两段封锁协议的事务可能发生死锁。 4 【正确答案】 B 【试题解析

19、】 采用封锁的方法固然可以有效防止数据的不一致性,但封锁本身也会产生一些麻烦,最主要的就是 “死锁 ”(deadlock)问题。所谓死锁,是 指多个用户申请不同封锁,由于申请者均拥有一部分封锁权而又需等待另外用户拥有的部分封锁而引起的永无休止的等待。一般讲,死锁是可以避免的,目前采用的办法有如下几种。 (1)预防法:此种方法是采用一定的操作方式以保证避免死锁的出现,顺序申请法、一次申请法等都属于此类方法。所谓顺序申请法,是指对封锁对象按序编号,用户申请封锁时必须按编号顺序 (从小到大或反之 )申请,这样能避免死锁发生。所谓一次申请法也称为一次封锁法,是指用户在一个完整操作过程中必须一次性申请它

20、所需要的所有封锁,并在操作结束后一次性归还所有封锁,这样也能 避免死锁的发生。 (2)死锁的解除法:此种方法是允许产生死锁,并在死锁产生后通过解锁程序以解除死锁。使用这种方法需要有两个程序,一个是死锁检测程序,用它来测定死锁是否发生;另一个是解锁程序,一旦经测定系统已产生死锁则启动解锁程序以解除死锁。 5 【正确答案】 A 【试题解析】 尽管系统中采取了各种保护措施来防止数据库的安全性和完整性被破坏,保证并行事务的正确执行,但是计算机系统中硬件的故障、软件的错误、操作员的失误,以及故意的破坏仍是不可避免的,这些故障轻则造成运行事务非正常地中断,影响数据库中数据 的正确性,重则破坏数据库,使数据

21、库中全部或部分数据丢失,因此数据库管理系统必须具有把数据库从错误状态恢复到某一已知的正确状态 (也称为完整性状态或一致性状态 )的功能,这就是数据库的恢复。装入最新的数据库后备副本后,可以使数据库恢复到最近一次转储时的一致性状态。 6 【正确答案】 C 【试题解析】 一个事务执行过程中,其正在访问的数据被其他事务所修改,导致处理结果不正确。也就是说,该事务在执行过程中受到了其他事务的干扰,违背了事务的隔离性。 7 【正确答案】 D 【试题解析】 事务是并发控制的基本单位,也是恢复的基本单位。在 SQL中支持事务的概念。所谓事务,是用户定义的一个操作序列 (集合 ),这些操作要么都做,要么一个都

22、不做,是一个不可分割的整体。一个事务通常以 BEGIN TRANSACTION开始,以 COMMIT 或 ROLLBACK结束。 SQL 提供了事务提交和事务撤销两种命令。 (1)事务提交。事务提交的命令为: COMMIT WORK 事务提交标志着对数据库的某种应用操作成功地完成,所有对数据库的操作都必须作为事务提交给系统时才有 效。事务一经提交就不能撤销。 (2)事务撤销。事务撤销的命令是: ROLLBACKWORK 事务撤销标志着相应事务对数据库操作失败,因而要撤销对数据库的改变,即要“回滚 ”到相应事务开始时的状态。 当系统非正常结束时 (如掉电、系统死机 ),将自动执行 ROLLBAC

23、K命令。 SQL 还提供了自动提交事务的机制,其命令为: SET AUTO COMMIT ON 其对应的人工工作方式命令为: SET AUTO COMMIT OFF 一旦规定了自动提交事务方式,则 系统将每条 SQL命令视为一个事务,并在命令成功执行完成时自动地完成事务提交。 8 【正确答案】 A 【试题解析】 事务是数据库更新操作的基本单位,事务回滚是指将该事务已经完成的对数据库的更新操作撤销,事务对数据库的操作首先是在缓冲区中进行的,DBMS 来实现定期的缓冲区数据写入硬盘数据库的操作,或由显式的指令来完成,事务的撤销只涉及数据库,不会改变事务中的变量值。 9 【正确答案】 B 【试题解析

24、】 事务日志 (Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由 于它并不像数据库中的 schema那样活跃,因此很少有人关注事务日志。事务日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。对于任何每一个事务过程,事务日志都有非常全面的记录,根据这些记录可以将数据文件恢复成事务前的状态。从事务动作开始,事务日志就处于记录状态,事务过程中对数据库的任何操作都在记录范围,直到用户点击提交或后退后才结束记录。每个数据库都拥有至少一个事务日志及一个数据文件。出于性能上的考虑, SQL Server将用户的改动存入缓存中,这些

25、改变会立即写入 事务日志,但不会立即写入数据文件。事务日志会通过一个标记点来确定某个事务是否已将缓存中的数据写入数据文件。当 SQL Server重启后,它会查看日志中最新的标记点,并将这个标记点后面的事务记录抹去,因为这些事务记录并没有真正地将缓存中的数据写入数据文件。这可以防止那些中断的事务修改数据文件。事务日志对数据库有重要作用,同时它对系统的整体性能也有一定影响。通过几个选项,我们可以对事务日志的性能进行优化。由于事务日志是一个连续的磁盘写入过程,因此在这当中不会发生读取动作。 10 【正确答案】 D 【试 题解析】 详细分析见试题 3。两段锁协议保证了在一个事务访问和更新数据时,别的

26、事务无法修改数据,可以避免丢失修改、不可重复读和读脏数据三类一致性问题。 11 【正确答案】 C 【试题解析】 在发生介质故障后,原有的数据库已破坏,需要从最近的副本 (最近的完全备份加此后所有的动态备份 ),根据事务日志,对于备份时正在执行的而未完成的事务做 Undo操作,要想使数据库处于一致性状态,则先需重做从最近的备份开始到故障前的所有事务,数据库即恢复至故障前的一致性状态。 12 【正确答案】 D 【试题解析】 本题考查的是事务的基本概念。事务的 4个特性为原子性(Atomicity)、一致性 (Consistency)、隔离性 (Isolation)和持久性 (Durability)

27、,这 4个特性也称事务的 ACID性质。原子性:指事务的所有操作在数据库中要么全做要么全都不做。如银行转账中的两个操作必须作为一个单位来处理,不能只执行部分操作。一致性:指事务独立执行的结果,将保持数据的一致性,即数据不会因为事务的执行而遭受破坏。数据的一致性是对现实世界真实状态的描述,如银行转账业务执行后也应该是账目平衡的。数据库在运行过程中 会出现瞬间的不一致状态,如从 A账户减去 X元到给 B 账户加上 X元之前这段时间数据是不一致的,但这种不一致只能出现在事务执行过程中,并且不一致的数据不能被其他事务所访问。一致性可以同 DBMS 的完整性约束机制来自动完成,而复杂的事务则由应用程序来

28、完成。隔离性:指一个事务的执行不能被其他事务干扰。并发事务在执行过程中可能会对同一数据进行操作,这些事务的操作应该不会相互干扰,是相互隔离的。如事务执行中数据不一致性状态出现时不能让其他事务读取到不一致的数据。持久性:指一个事务一旦提交,它对数据库的改变必须是永久的,即便系 统出现故障时也是如此。如转账事务执行成功后, A、 B两个账户上的余额就是一个新的值,在没有出现下一个事务对其修改之前一直保持不变,即使系统出现故障,也应该恢复到这个值。 13 【正确答案】 A 【试题解析】 本题考查的是数据库事务处理方面的基础知识。在事务处理的过程中, DBMS把事务开始、事务结束及对数据库的插入、删除

29、和修改的每一次操作写入日志文件。一旦发生故障, DBMS的恢复子系统利用日志文件撤销事务对数据库的改变,回退到事务的初始状态。 DBMS可利用日志文件来进行事务故障恢复和系统故障恢复,并可 协助后备副本进行介质故障恢复。 14 【正确答案】 A 【试题解析】 本题考查对事务故障概念的理解。事务故障是指事务程序的执行引起的故障,更新程序的执行违背了完整性约束应属于事务故障;系统故障是指系统硬件 (存储设备除外 )、操作系统及 DBMS 的故障所引起的数据库运行故障;介质故障是指存储设备故障导致数据丢失;网络故障不直接影响数据库存储数据的正确性,不属于数据库故障。 15 【正确答案】 A 【试题解

30、析】 详细分析见试题 12。 16 【正确答案】 D 【试题解析】 详细分析见试题 3。 17 【正确答案】 B 【试题解析】 详细分析见试题 7。 18 【正确答案】 B 【试题解析】 本试题造成数据不一致的原因是:若火车售票点 T1读取某一数据更新后还未存盘,火车售票点 T2接着也读取该数据,也就是说火车售票点 T1修改的数据丢失了。并发操作造成数据不一致性的主要原因是破坏事务的隔离性,为了避免不一致性的发生,必须用正确的方式调度并发操作,使一个事务的执行不受其他事务的干扰,这就是并发控制。在本题中可以通过加排他锁来实现,也就是说只有在火车售票点 T1读取某一数据更新并存盘后 ,火车售票点

31、 T2才能读取该数据。 19 【正确答案】 C 【试题解析】 详细分析见试题 2。 20 【正确答案】 C 【试题解析】 备份术语如下。 硬件级问题:选择备份文件用的存储设备和位置。 软件级问题:选择备份程序并充分挖掘、利用其功能。 本地备份:在本机硬盘的特定区域备份文件。 异地备份:将文件备份到与电脑分离的存储介质,如软盘、 Zip 磁盘、光盘及存储卡等介质。这是备份的硬件级问题。 活备份:备份到可擦写存储介质,以便更新和修改。 死备份:备份到不 可擦写的存储介质,以防错误删除和别人有意篡改。这还是备份的硬件级问题。 动态备份:利用软件功能定时自动备份指定文件,或文件内容产生变化后随时自动备

32、份。适合在数据更新量小时做备份,不适合在事务请求频繁时进行备份。 静态备份:为保持文件原貌而进行人工备份。这是本地备份的软件级问题。备份需要较长时间,不应经常进行。 海量备份不适合在事务请求频繁时进行。 21 【正确答案】 D 【试题解析】 与操作系统中的进程调度类似,在数据库系统中,若系统中存在一个等待事务集 (T0, T1, T2, , Tn),其中 T0正等待被 T1锁住的数据项 A1,T1正等待被 T2锁住的数据项 A2, , Tn-1正等待被 Tn锁住的数据项 An, Tn正等待被 T0锁住的数据项 A0,则系统处于死锁的工作状态。在数据库中,产生死锁的原因是两个或多个事务都已封锁了

33、一些数据对象,然后又都请求对已为其他事务封锁的数据对象加锁,从而出现死等待。预防死锁的方法通常有一次封锁法 (每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行 )和顺序封锁法 (预先对数据对象规定一个封锁顺序,所有事务都按这个顺序进行封锁 ),死锁的诊断方法一般有超时法和等 待图法。 22 【正确答案】 C 【试题解析】 数据库系统中可能发生各种各样的故障,大致可以分以下几类。 (1)事务内部的故障 事务内部的故障有的是可以通过事务程序本身发现的 (见下面转账事务的例子 ),有的是非预期的,不能由事务程序处理。 例如,银行转账事务。这个事务把一笔金额从一个账户甲转给另一个账户乙。

34、 BEGIN TRANSACTION 读账户甲的余额 BALANCE; BALANCE=BALANCE-AMOUNT; (AMOUNT 为转账金额 ) IF(BALANCE 0)THEN 打印 金额不足,不能转账 ; ROLLBACK; (撤销刚才的修改,恢复事务 ) ELSE 读账户乙的余额 BALANCE1; BALANCE1=BALANCE1+AMOUNT; 写回 BALANCE1; COMMIT; 这个例子说明事务是一个 “完整的 ”工作单位,它所包括的一组更新操作要么全部完成要么全部不做,否则就会使数据库处于不一致状态,例如只把账户甲 的余额减少了而没有把账户乙的余额增加。 在这段程

35、序中若产生账户甲余额不足的情况,应用程序可以发现并让事务滚回,撤销错误的修改,恢复数据库到正确状态。 事务内部更多的故障是非预期的,是不能由应用程序处理的。如运算溢出、并行事务发生死锁而被选中撤销该事务等,以后,事务故障仅指这一类故障。 事务故障意味着事务没有到达预期的终点 (COMMIT 或者显式的ROLLBACK),因此,数据库可能处于不正确状态。系统就要强行滚回此事务,即撤销该事务已经做出的任何对数据库的修改,使得该事务好像根本没有启动一样 。 (2)系统范围内的故障 系统故障是指造成系统停止运转的任何事件,使得系统要重新启动。例如 CPU故障、操作系统故障、突然停电等,这类故障影响正在

36、运行的所有事务,但不破坏数据库。这时主存内容,尤其是数据库缓冲区 (在内存 )中的内容都被丢失,使得运行事务都非正常终止,从而造成数据库可能处于不正确的状态,恢复子系统必须在系统重新启动时让所有非正常终止的事务滚回,把数据库恢复到正确的状态。 (3)介质故障 系统故障常称为软故障 (Soft Crash),介质故障称为硬故障 (Hard Crash)。硬故障指外存故障,如磁盘的磁头碰撞、瞬时的强磁场干扰等。这类故障将破坏数据库或部分数据库,并影响正存取这部分数据的所有事务,这类故障比前两类故障发生的可能性小得多,但破坏性最大。 (4)计算机病毒 计算机病毒是一种人为的故障或破坏,是一些恶作剧者

37、研制的一种计算机程序,这种程序与其他程序不同,它像微生物学所称的病毒一样可以繁殖和传播,并造成对计算机系统包括数据库的危害。 病毒的种类很多,不同病毒有不同的特征。小的病毒只有 20条指令,不到 50字节。大的病毒像一个操作系统,由上万条指令组成。 计算机病毒已成为计算机系统的主要威胁,自然也是数据库系统的主要威胁,为此计算机的安全工作者已研制了许多预防病毒的 “疫苗 ”,检查、诊断、消灭计算机病毒的软件也在不断发展。但是,至今还没有一种使得计算机 “终生 ”免疫的 “疫苗 ”。因此数据库一旦被破坏仍要用恢复技术加以恢复。 总结各类故障,对数据库的影响有两种可能性,一是数据库本身被破坏,二是数

38、据库没有破坏,但数据可能不正确,这是因为事务的运行被终止造成的。 23 【正确答案】 E 24 【正确答案】 B 25 【正确答案】 A 【试题解析】 数据库系统由数据库、数据库管理系统和硬件等组成,数据库系统是在文件系统的基础上发展起来的。数据库系统由于能够减少数据冗余,提高数据独立性,并集中检查数据完整性,获得了广泛的应用。 26 【正确答案】 B 27 【正确答案】 B 28 【正确答案】 C 29 【正确答案】 D 30 【正确答案】 C 【试题解析】 试题 (17)的详细分析见 (3)题,根据 “供应商 ”表函数依赖为Sno(Sname , Zip, City),每个非主属性完全函数

39、依赖于候选键 Sno,但ZipCity ,非主属 性 Zip 传递依赖于 “供应商 ”关系的候选键,所以 “供应商 ”关系属于 2NF。试题 (18)主要是约束供应商名不取重复值,所以应填 UNIQUE,试题(19)是确定关系的主码 Sno,所以应填 PRIMARY KEY(Sno),试题 (20)(21)是要求查询满足 “红 ”色零件,价格低于 500,且数量大于 20(这三个条件, (20)空是在关系 P里,而关系 P只含有颜色属性,不包含价格和数量属性,所以 (20)应填Color=红 ,价格和数量属性包含在关系 SP中,所以 (21)应填 SP.Price 500 AND SP.Qty 200。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1