1、软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 83及答案与解析 1 数据库系统由数据库、数据库管理系统和硬件等组成,数据库系统是在文件系统的基础上发展起来的。数据库系统由于能够减少数据冗余,提高数据独立性,并集中检查 (1),才获得了广泛的应用。 ( A)数据完整性 ( B)数据层次性 ( C)数据操作性 ( D)数据兼容性 2 以下关于数据库系统的描述中,正确的是 (2)。 ( A)数据库能减少数据冗余、避免一切数据的重复存储 ( B)各类用户程序均可随意地使用数据库中的各种数据 ( C) 数据库系统中的概念模式如有改变,子模式不必变,因而用户程序亦不必改写 ( D)数据库系统
2、的存储模式如有改变,则概念模式应予调整,否则用户程序会在执行中出错 3 在关系数据库设计中,设计关系模式是数据库设计中哪个阶段的任务 (3)。 ( A)逻辑设计阶段 ( B)概念设计阶段 ( C)物理设计阶段 ( D)需求分析阶段 4 关系数据库规范化的目的是 (4)。 ( A)提高数据库的存取效率 ( B)使数据库的逻辑结构更合理,消除插入、修改、删除异常,减少数据冗余 ( C)定义和描述数据的约束,更加清晰地描述 数据之间的关系 ( D)进一步确认用户需求,细化业务流程,使设计的数据库逻辑结构更符合用户要求 5 下列关于 ER图的叙述中, (5)是不正确的。 ( A)实体用矩形表示,属性用
3、椭圆形表示,联系用菱形表示 ( B)实体之间的联系可分为 1: 1、 1: n和 n: m三类 ( C) 1: 1联系是 1: n联系的特例 ( D)实体之间 1: 1、 1: n和, n: m三类联系只能存在于两个实体之间 6 在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是 (6)。 ( A)连接 ( B)选择 ( C)投影 ( D)笛卡儿乘 积 7 关系 R1和 R2如下图所示: 若进行 R1 R2运算,则运算结果共有 (7)个元组。 ( A) 4 ( B) 5 ( C) 6 ( D) 7 8 下列关于分布式数据库的特点描述错误的是 (8)。 ( A)分布式数据库系统的数据
4、是分布的,难以集中控制 ( B)分布式数据库系统的数据的组成对应用程序来说是透明的,即具有独立性 ( C)分布式数据库系统的数据存在冗余且可控 ( D)分布式数据库系统的数据具有场地自治性 9 关于数据仓库的特性,下列说法正确的是 (9)。 ( A)面向主题的特征是指在组织数据仓库数 据时,需要将各种分析需求归类并抽象,形成相应的分析应用主题,并根据分析应用主题的数据需求设计和组织数据 ( B)集成特征是指需要将业务系统中的所有数据抽取出来,载入到数据仓库中 ( C)集成特性是指需要将企业整个架构中的各个数据和应用集中到数据仓库中 ( D)分析随时间变化性是指数据仓库中的每个数据单元一般都有时
5、间标志,且其中各种数据 (包括原始数据 )会随时间变化被经常修改 10 关系 R(A, B, C)满足下列函数依赖 F(AB , AC , BAC) ,关系 R的候选关键字为 (10)。 ( A) AC ( B) A和 B ( C) A和 BC ( D) AC和 AB 11 设有一图书管理数据库,其关系模式是 R0(L, B, BNAME, BPRICE,BPUB),其属性分别表示个人借书证号、书号、书名、书价、图书出版社。该关系模式属于 (11)。 ( A)第一范式但不属于第二范式 ( B)属于第二范式但不属于第三范式 ( C)属于第三范式 ( D)不是范式 12 设有关系模式 R(E, N
6、, M, L, Q),其函数依赖集为 F=EN , EMQ ,ML 。则关系模式 R达到了 (12)。 ( A) 1NF ( B) 2NF ( C) 3NF ( D) BCNF 13 对最近一次数据库完全备份以来发生的数据变化进行备份,优点是速度快,占用较小的时间和空间的转储方式为 (13)。 ( A)完全转储 ( B)差量转储 ( C)增量转储 ( D)定期转储 14 设有如下关系: 与元组演算表达式 t u v(R(u) s(V) u3=V1 u4=V2 u1(V3 t1=u2)等价的关系代数表达式是 (14)。 ( A) 兀 A B(R S) ( B) B(A E(RS) ( C) B(
7、A E(R S) ( D) B(R C=S C A E(RS) 15 若关系 R、 S如下图所示, RS=(15)。16 若关系模式 R ,则将 R分解为 R1(A, B)和R2(B, C),则该分解 (16)。 ( A)满足无损连接,但不保持函数依赖 ( B)不满足无损连接,但保持函数依赖 ( C)既不满足无损连接,又不保持函数依赖 ( D)既满足无损连接,又保持函数依赖 17 给定关系模式 R, U=A, B, C, F=ABC , CB 。关系 R有(17)。 ( A) 1个非 主属性和 2个主属性 ( B) 2个非主属性和 1个主属性 ( C) 0个非主属性和 3个主属性 ( D) 3
8、个非主属性和 0个主属性 18 给定关系模式 R(U, F), U=A, B, C, D, F=AC , AD , CB ,BD , F中的冗余函数依赖为 (18)。 ( A) AC ( B) DA ( C) CB ( D) BD 19 如果三个实体间两两都有联系,实体 A与实体 B之间是多对多联系,实体 B和实体 C之间是一对多联系,则实体 A与实体 C之间的联系是 (24)。 ( A)一对一 ( B)一对多 ( C)多对多 ( D)无法确定 20 事务 A对某数据项 D加了 X锁,则以下哪种说法是正确的 (25)。 ( A)允许事务 A读取数据项 D,其他事务不能再对数据项 D进行任何操作
9、 ( B)允许事务 A修改数据项 D,其他事务可对数据项 D进行加 S锁 ( C)允许事务 A读取或者修改数据项 D,其他事务不能再对数据项 D进行任何操作 ( D)允许事务 A读取或者修改数据项 D,其他事务可对数据项 D进行加 S锁 21 如果事务只提交对数据库所做更新的一部分而不是全都,这违反了事务的(26)。 ( A)原子性 ( B)一致性 ( C)隔离性 ( D)持久性 22 设有两个事务 T1、 T2,其并发执行如图 7-1所示。下列叙述中 (27)是正确的。( A)该并发执行不存在问题 ( B)该并发执行丢失修改 ( C)该并发执行不能重复读 ( D)该并发执行读 “脏 ”数据
10、23 设有两个事务 T1、 T2有如图 7-2所示的调度,产生的不一致性是 (28)。( A)丢失修改 ( B)不可重复读 ( C)读脏数据 ( D)幻影读 24 关系模型允许定义三类数据约束,下列不属于数据约束的是 (29)。 ( A)实体完整性约束 ( B)参照完整性约束 ( C)域完 整性约束 ( D)用户自定义的完整性约束 25 若事务程序中有表达式 a b,如果 b取值为 0时计算该表达式,会产生的故障属于 (30)。 ( A)事务故障 ( B)系统故障 ( C)介质故障 ( D)死机 25 某医院管理系统部分关系模式为科室 (科室号,科室名,负责人,电话 )、病患(病历号,姓名,住
11、址,联系电话 )和职工 (职工号,职工姓名,科室号,职位,住址,联系电话 )。假设每个科室有一位负责人和一部电话,每个科室有若干名职工,一名职工只属于一个科室;一个医生可以为多个病患看病;一个病患可以由多个医生多次 诊治;职位有医生、护士和其他。 a病患和医生的就诊联系类型是 (19)。科室关系的主键和外键分别为 (20)。对于就诊联系最合理的设计是 (21)。 b若科室关系中的科室名是唯一的,并要求指出外码。请将下述 SQL语句的空缺部分补充完整。 CREATE TABLE科室 (科室号 CHAR(3) PRIMARYKEY, 科室名 CHAR(10) (22), 负责人 CHAR(4),
12、电话 CHAR(20), (23); 26 (19) ( A) 1: 1 ( B) 1: n ( C) n: 1 ( D) n: m 27 (20) ( A)科室号、科室名 ( B)科室名、科室号 ( C)科室名、负责人 ( D)科室号、负责人 28 (21) ( A)就诊 (病历号,职工号,就诊情况 ) ( B)就诊 (病历号,职工姓名,就诊情况 ) ( C)就诊 (病历号,职工号,就诊时间,就诊情况 ) ( D)就诊 (病历号,职工姓名,就诊时间,就诊情况 ) 29 (22) ( A) NOTNULL ( B) UNIQUE ( C) KEY UNIQUE ( D) PRIMARY KEY
13、 30 (23) ( A) PRIMARYKEY (科室号 )NOT NULL UNIQUE ( B) PRIMARY KEY(科室名 )UNIQUE ( C) FOREIGN KEY(负责人 )REFERENCES职工 (职工姓名 ) ( D) FOREIGN KEY(负责人 )REFERENCES职工 (职工号 ) 软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 83答案与解析 1 【正确答案】 A 【试题解析】 本题主要考查数据库的概念,是一个纯概念题。 数据库系统由数据库、数据库管理系统和硬件等组成,数据 库系统是在文件系统的基础上发展起来的。数据库系统由于能够减少数据冗余
14、,提高数据独立性,并集中检查数据完整性,才获得了广泛的应用。数据库系统提供给用户的接口是数据库语言,具有数据定义、数据操作和数据检查功能,可独立使用,也可嵌入宿主语言使用。 SQL语言已被国际标准化组织采纳为关系型数据库的标准语言。 【知识模块】 数据库系统 2 【正确答案】 C 【试题解析】 对于 A选项,数据库能减少数据冗余的描述是正确的,但说数据库能避免一切数据的重复存储是错误的,因为数据库是不可能避免一切数据重复的,虽然范式 的提出减少了很多数据冗余,但是它并不能彻底避免数据冗余。而B、 C、 D选项主要考查三级模式与二级映射的内容。下面将详细为大家介绍一下这个知识点。从图 7-3中,
15、可以看出数据库系统由外模式、模式和内模式三级构成。 (1)外模式,对应于用户级数据库。外模式 (子模式、用户模式 )用以描述用户看到或使用的那部分数据的逻辑结构,用户根据外模式用数据操作语句或应用程序去操作数据库中的数据。外模式主要描述组成用户视图的各个记录的组成、相互关系、数据项的特征、数据的安全性和完整性约束条件。外模式是数据库用户(包括程序员和最终用户 )能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。一个数据库可以有多个外模式。一个应用程序只能使用一个外模式。(2)概念模式,对应于概念级数据库。概念模式 (模式、逻辑模式 )用以
16、描述整个数据库中数据库的逻辑结构,描述现实世界中的实体及其性质与联系,定义记录、数据项、数据的完整性约束条件及记录之间的联系,是数据项值的框架。 数据库系统概念模式通常还包含有访问控制、保密定义、完整性检查等方面的内容,以及概念物理之间的映射。 概念模式是数据库中全体数据 的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个概念模式。 (3)内模式,对应于物理级数据库。内模式是整个数据库的最低层表示,不同于物理层,它假设外存是一个无限的线性地址空间。内模式定义的是存储记录的类型、存储域的表示以及存储记录的物理顺序,指引元、索引和存储路径等数据的存储组织。 内模式是数据物理结构和
17、存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。 数据库系统两级独立性是指物理独立性和逻辑独立性。三个抽象级间通过两级映射 (外模式模式映射,模式内模式映射 )进 行相互转换,使得数据库的三级形成一个统一的整体。 (1)物理独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。当数据的物理存储改变时,应用程序不需要改变。 物理独立性存在于概念模式和内模式之间的映射转换,说明物理组织发生变化时应用程序的独立程度。 (2)逻辑独立性。逻辑独立性是指用户的应用程序与数据库中的逻辑结构是相互独立的。当数据的逻辑结构改变时,应用程序不需要改变。 逻辑独立
18、性存在于外模式和概念模式之间的映射转换,说明概念模式发生变化时应用程序的独立程度。逻辑独立性比物理独 立性更难实现。 因此, B选项的描述是错误的,因为用户程序访问数据库是通过外模式进行的,而外模式可以有效控制用户程序访问数据的范围,只让用户访问其权限内的数据即可,而其他数据用户程序无法访问。 同样, D选项的描述也是错误的,因为在概念模式与存储模式之间也有映射层,映射层能应对存储结构的改变,所以当存储模式变化时,概念模式无须调整,这也就是我们所说的物理独立性。 【知识模块】 数据库系统 3 【正确答案】 A 【试题解析】 数据库逻辑设计的主要目的是产生一个 DBMS可处理的逻辑数据模型和数据
19、库模 式,该模式必须满足数据库的存取、一致性及运行等方面的用户需求。关系数据模型是目前常用的逻辑数据模型,因此设计关系模式是数据库逻辑设计阶段的主要任务之一。 【知识模块】 数据库系统 4 【正确答案】 B 【试题解析】 数据库逻辑设计是数据库应用系统生命周期中非常重要的一个环节,如果数据库逻辑结构不好,利用其他方法来改善数据库性能都将很有限,而逻辑结构设计的关键是如何使数据库能合理地存储用户的数据,方便用户进行数据处理。关系规范化理论是将一个不合理关系模式如何转化为合理关系模式的理论,其目的就是 解决数据冗余、插入异常、删除异常和更新异常等问题。 【知识模块】 数据库系统 5 【正确答案】
20、D 【试题解析】 ER数据模型所采用的三个主要概念是:实体集、联系集和属性。这三个是构成 ER模型的基本成分。 其中,实体集是具有相同类型及相同性质 (属性 )的实体集合,用矩形框表示实体类型,表示考虑问题的对象;联系集是指同类联系的集合,用菱形表示联系类型;用椭圆框表示实体类型和联系类型的属性。相应的命名写入框内。对于键属性,则在属性名下画一条横线表示。 两个实体型之间的联系可以分成下述三类。 (1)一对一联系 (1: 1)。如果对于实体集 A中的每一个实体,实体集 B中至多有一个实体与之联系,反之亦然,则称实体集 A与实体集 B具有一对一联系。 (2)一对多联系 (1: n)。如果对于实体
21、集 A中的每一个实体,实体集 B中有 n个实体 (n0)与之联系,反之,对于实体集 B中的每一个实体,实体集 A中至多只有一个实体与之联系,则称实体集 A与实体 B有一对多联系。 (3)多对多联系 (m: n)。如果对于实体集 A中的每一个实体,实体集 B中有 n个实体 (n0)与之联系,反之,对于实体集 B中的每一个实体,实 体集 A中也有 m个实体 (m0)与之联系,则称实体集 A与实体 B具有多对多联系。 实体型之间的一对一、一对多和多对多联系不仅存在于两个实体型之间,还存在于两个以上的实体型之间。 【知识模块】 数据库系统 6 【正确答案】 B 【试题解析】 笛卡儿乘积运算,假设关系
22、R和关系 S的元数个数与属性个数分别为 m和 n。 RS表示 R和 S的笛卡儿积, RS=(m+n)个属性的一个元组集合,每个元组的前 m个属性值来自 R的一个元组,后 n个属性值来自 S的一个元组的所有组合 。 连接是从两个关系的笛卡 儿乘积结果中选取属性间满足一定条件的元组,它不能实现题目中给出的条件。 投影是从关系中挑选若干属性组成新的关系,它是对关系进行列操作的方法。 选择是从关系中找到满足条件的所有元组的操作,即不改变关系表中的属性个数但能减少元组个数的操作,它是对关系进行行操作的方法。 【知识模块】 数据库系统 7 【正确答案】 A 【试题解析】 本题主要考查关系运算中的自然连接运
23、算。自然连接,是通过两个关系中相同属性的相同值来进行连接的一种关系运算。在本题中, R1和 R2中相同的属性分别是 C和 D,而取 值也相等的是 R1中的第一行、第三行与 R2中的第三行,另外还有 R1中的第二行与 R2中的第一行和第二行,因此自然连接后的运算结果为 因此,运算结果共有 4个元组 (记录 )。 【知识模块】 数据库系统 8 【正确答案】 A 【试题解析】 分布式数据系统是传统集中式数据库系统的发展,因此它具有集中式数据库系统的特点。同时,由于它的分布性而又使这些特点具有新的含义。传统的数据库系统针对文件系统的弱点,采用了集中控制以实现数据共享。对于分布式数据库系统来说,由于数据
24、的分散性,分布式数据库系统具有分散与集中 统一的特性。分布式主要有以下几个特点: (1)数据的集中控制性,分布式数据库是由传统的数据库发展而来,因此也具有集中控制的特性。 (2)数据独立性,独立性指的是数据的组成对应用程序来说是透明的。应用程序只需要考虑数据的逻辑结构,而不用考虑数据的物理存放,因而数据在物理组织上的改变不会影响应用程序。 (3)数据冗余可控性,分布式数据库中的 数据一般存储在经常使用的场地上,但应用对两个或两个以上场地的同一数据有存取要求也是时常发生的,而且当传输代价高于存储代价时,可以将同一数据存储在两个 (甚至更多 )场地上,以节省传输的开销。由于这种冗余是在系统控制下的
25、,所以给系统造成的不利影响是可控制的。 (4)场地自治性,局部用户所使用的数据可以不参与到全局数据库中去,这种局部应用独立于全局应用的特性就是局部数据库的自治性。存取的有效性分布式数据库系统的全局查询可以分解成等效的子查询,即全局查询的执行计划可分解成多个子查询执行计划,而子查询计划又是在 各场地上分布执行的。 【知识模块】 数据库系统 9 【正确答案】 A 【试题解析】 面向主题的特性是指将关于主题的数据组织起来分析数据及数据之间的关系。集成是将业务系统中关于主题的数据集中起来,对数据进行一系列预处理。随时间变化的特征体是不进行分析数据更新操作,但数据仓库随时间变化会不断增加、删除、修改数据
26、。 【知识模块】 数据库系统 10 【正确答案】 B 【试题解析】 本题主要考查求候选键。这个知识点是考试中一个非常重要的知识点,求候选键是求范式或后续规范化处理的基础。求候选 键最稳靠的办法是图示法。图示法求候选键的过程如下: (1)将关系的函数依赖关系,用 “有向图 ”的方式表示。 (2)找出入度为 0的属性,并以该属性集合为起点,尝试遍历有向图,若能正常遍历图中所有结点,则该属性集即为关系模式的候选键。 (3)若入度为 0的属性集不能遍历图中所有结点,则需要尝试性的将一些中间结点 (既有入度,也有出度的结点 )并入度为 0的属性集中,直至该集合能遍历所有结点,集合为候选键。 在本题中,我
27、们也可以通过图示法来求候选键。如果一个属性集能唯一标识元组,且又不含有多余属性,那么这个属性集就是候选键 。根据图示法可以得到如7-4所示的图。 然后从属性 A出发,可以遍历到 B和 C,因此 A是一个候选键,但这时,我们注意到,从 B出发,也可以遍历图中剩余的顶点,因此 B也是其一个候选键。所以本题的候选键是 A和 B。 【知识模块】 数据库系统 11 【正确答案】 A 【试题解析】 一范式要求每个属性都是不可分解的,题中关系模式 R0的所有的属性都不可再分,因而属于第一范式,但它不是第二范式,因为第二范式要求每个非主属性的完全函数依赖于主码,而 R0中如果将 (L, B )作为主码的话,则
28、属性 BNAME只是部分 函数依赖于主码 (因为它的完全函数依赖于 B ),所以它不是第二范式,如果不满足第二范式,也就不可能满足第三范式或更高级别的范式。 如果有多人借同一种书,则 BNAME等信息要重复出现多次。如果将 R0分解成R1(L, B )和 R2(B, BNAME, BPRICE, BPUB)两个关系模式,则 R1和R2都成为第二范式,在一定程度上降低了数据冗余。 【知识模块】 数据库系统 12 【正确答案】 A 【试题解析】 本题主要考查关系模式范式的判定。对于这类题首先要求解出其候选键,候选键即能唯一确定一 个元组的属性或属性组,对于这类题,主要通过函数依赖集来求解,从候选键
29、出发,通过函数依赖集中的依赖关系,能推出关系模式中所以属性即可。因此可知本题的候选键是。 EM,候选键中的属性是主属性,而其他属性是非主属性。 1NF要求关系模式中的属性都是原子属性,即不可再分的属性,显然本题符合。 2NF要求消除非主属性对候选键的部分依赖,而 EN 就是一个部分依赖,因此不符合 2NF。达不到 2NF,因此就不可能达到 3NF或 BCNF。 另外,因为关系模式达不到 2NF,因此肯定存在冗余、修改操作的不一致性 、插入和删除异常。 【知识模块】 数据库系统 13 【正确答案】 C 【试题解析】 转储还可以分为完全转储、增量转储和差量转储。完全转储是指每次转储全部数据库;增量
30、转储是指每次只转储上次转储后更新过的数据;差量转储是对最近一次数据库完全备份以来发生的数据变化进行备份。如果数据库很大,事务处理又十分频繁,则增量转储方式是很有效的;而差量转储的优点是速度快,占用较小的时间和空间。 【知识模块】 数据库系统 14 【正确答案】 C 【试题解析】 在元组演算表达式中, u代表关系 R的元 组, v代表关系 S的元组。 u3=V1表示 R元组的第 3个属性 (C)值等于 S元组的第 1个属性 (C)值,相当于关系运算中的 R C=S C。 u4=V2表示 R元组的第 4个属性 (D)值等于 S元组的第 2个属性 (D)值,相当于关系运算中的 R D=S D。 从这
31、 2个等式可以排除选项 B和 D。 u1v3表示 R元组的第 1个属性 (A)值大于 S元组的第 3个属性 (E)值。相当于关系运算中的 R ES E。 t1=u2表示最后结果只取关系 R的第 2个属性 (B)。该等 式排除了选项 A。 根据上面的分析,可以得出,本题的正确答案为 C。 【知识模块】 数据库系统 15 【正确答案】 D 【试题解析】 本题主要考查除法运算。其求解过程为: 首先按除运算定义要求,确定 X, Y, Z属性集合。 Y是关系 R中的属性集合, Z是 S中全部属性的集合,所以很容易得出 Z=C, D,同时由于 Y=Z,所以 Y=C, D, X=A, B。因此RS结果集包含
32、属性 A和 B。 然后将关系 R的 A、 B元组 (共有与两个元组 )与关系 S作笛卡儿积操作,结果如图 7-5所示。 通过检查该表,可以发现元 组与 S(Z)的笛卡儿积被包含在 R(X, Y)中,而元组与 S(Z)的笛卡儿积有一条记录未被包含在 R(X, Y)中,所以结果集中只有元组。结果如图 7-6所示。 【知识模块】 数据库系统 16 【正确答案】 D 【试题解析】 本题考查对模式分解的掌握。根据无损连接分解判定定理,有R1R2R2 -R1,即 BC 成立,故分解具有无损连接性;又 R的函数依赖集F=AB , BC 在 R1, R2上的投影分别为 F1=AB) , F2=BC ,即有 F
33、1 F2=F,从而 (F1 F2)+=F+,根据定义,分解 保持了函数依赖。 【知识模块】 数据库系统 17 【正确答案】 C 【试题解析】 本题主要考查函数依赖的基础知识。 关系中的某一属性或属性组的值能唯一的标识一个元组,而其任何真子集都不能再标识,则称该属性组为候选码。 这里要注意,如果一个关系有多个不同的主码时,那么这些主码组合在一起就是候选码,也就是说一个关系的主码只能选一个,而候选码可以有多个,这就好比选班长一样,候选人可以多个,但最终的班长只能有一个,当然也有候选人就只有一个,候选码也一样,也可能只有一个,在这种情况下, 候选码就是主码。 主属性和非主属性是互补的,一个关系模式中
34、的属性不是主属性就是非主属性。组成候选码的属性就是主属性,其他的就是非主属性,所以要判断关系模式中的属性是主属性还是非主属性,首先要求解出其候选码。 在本题中,从题目给出的函数依赖关系可以看出, AB能推导出 C,即能推导出所有的属性;而 C能推导出 B,同样 AC也能推导出所有的属性,因此 AB与 AC都是该关系的候选码。所以该关系中的属性都是主属性,没有非主属性。 【知识模块】 数据库系统 18 【正确答案】 B 【试题解析】 冗余 函数依赖就是指函数依赖集 F中多余的函数依赖关系。这样多余的含义是,驱动该函数依赖关系后,仍然不改变其性质。比如,去掉 X-Y,然后在 F中求 X+,如果 Y
35、仍然在 X+中,则表明 X-Y是多余的,需要去掉。 在本题中,如果去掉 AC ,那么 F=AD , CB , BD ,这时从 A出发,就只能 推导出 A和 D,因此 A+=A, D,不包含 C,因此该函数依赖不是多余的。 如果去掉 AD ,那么 F=AC , CB , BD ,这时从 A出发,就能推导出 A、C、 B、 D,因此 A+=A, B, C, D,包含了 D,因此该函数依赖是多余 的,应该去掉。 同理,如果去掉 CB ,那么 C+=C,不包含 B,而如果去掉 BD ,那么B+=B,因此这两个函数依赖都不是多余的函数依赖。 【知识模块】 数据库系统 19 【正确答案】 C 【试题解析】
36、 如果三个实体 A、 B、 C之间两两存在不同的联系,可以由 A与 B以及 B与 C之间的联系推导出 A与 C的联系,如果 A与 B之间是多对多联系, B与 C之间是一对一联系,则 A与 C之间也是多对一联系。比如,一个学生可以选修多门课程,每个老师只能交一门课程,一门课程有多位老师教授,因此学生与老师的对应关系是多对 多。 【知识模块】 数据库系统 20 【正确答案】 C 【试题解析】 处理并发控制的主要方法是采用封锁技术。常见的主要有两种封锁: X封锁和 S封锁。 (1)排他型封锁 (简称 x封锁 ):如果事务 T对数据 A(可以是数据项、记录、数据集以至整个数据库 )实现了 X封锁,那么
37、只允许事务 T读取和修改数据 A,其他事务要等事务 T解除 x封锁以后,才能对数据 A实现任何类型的封锁。可见 X封锁只允许一个事务独锁某个数据,具有排他性。 (2)共享型封锁 (简称 S封锁 ): X封锁只允许一个事务独锁和使用数据,要求 太严。需要适当从宽,例如可以允许使用数据,但不允许修改,这就产生了 S封锁概念。 S封锁的含义是,如果事务 T对数据 A实现了 S封锁,那么允许事务 T读取数据 A,但不能修改数据 A,在所有 S封锁解除之前决不允许任何事务对数据A实现 X封锁。 【知识模块】 数据库系统 21 【正确答案】 A 【试题解析】 数据库管理系统运行的基本工作单位是事务,事务是
38、用户定义的一个数据库操作序列,这些操作序列要么全做要么全不做,是一个不可分割的工作单位。事务具有以下特性 (ACID特性 ): (1)原子性:数据库的逻辑 工作单位。 事务的原子性保证事务包含的一组更新操作是原子不可分的,也就是说这些操作是一个整体,对数据库而言全做或全不做,不能部分完成。这一性质即使在系统崩溃之后仍能得到保证,在系统崩溃之后将进行数据库恢复,用来恢复和撤销系统崩溃处于活动状态的事务对数据库的影响,从而保证事务的原子性。系统对磁盘上的任何实际数据的修改之前都会将修改操作信息本身的信息记录到磁盘上。当发生崩溃时,系统能根据这些操作记录当时该事务处于何种状态,以此确定是撤销该事务所
39、做的所有修改操作还是将修改的操作重新执行。 (2)一 致性:使数据库从一个一致性状态变到另一个一致性状态。 一致性要求事务执行完成后,将数据库从一个一致状态转变到另一个一致状态。它是一种以一致性规则为基础的逻辑属性。 例如,在转账的操作中,各账户金额必须平衡,这一条规则对于程序员而言是一个强制的规定,由此可见,一致性与原子性是密切相关的。事务的一致性属性要求事务在并发行的情况下事务的一致性仍然满足。它在逻辑上不是独立的,由事务的隔离性来表示。 (3)隔离性:不能被其他事务干扰。 隔离性意味着一个事务的执行不能被其他事务干扰。即一个事务内部的操作 及使用的数据对并发的其他事务是隔离的,并发执行的
40、各个事务之间不能互相干扰。它要求即使有多个事务并发执行,看上去每个成功事务按串行调度执行一样。这一性质的另一种称法为可串行性,也就是说系统允许的任何交错操作调度等价于一个串行调度。串行调度的意思是每次调度一个事务,在一个事务的所有操作没有结束之前,另外的事务操作不能开始。由于性能原因,需要进行交错操作的调度,但也希望这些交错操作的调度的效果和某一个串行调度是一致的。 DM实现该机制是通过对事务的数据访问对象加适当的锁,从而排斥其他的事务对同一数据库对象的并发操作 。 (4)持续性 (永久性 ):一旦提交,改变就是永久性的。 系统提供的持久性保证要求一旦事务提交,那么对数据库所做的修改将是持久的
41、,无论发生何种机器和系统故障都不应该对其有任何影响。例如,自动柜员机(ATM)在向客户支付一笔钱时,就不用担心丢失客户的取款记录。事务的持久性保证事务对数据库的影响是持久的,即使系统崩溃。正如在讲原子性时所提到的那样,系统通过做记录来提供这一保证。 【知识模块】 数据库系统 22 【正确答案】 B 【试题解析】 丢失更新:丢失更新是指两个事务 T1和 T2读入同一数据并修改, T2提交的结果破坏了 T1提交的结果,导致 T1的修改被丢失。不能重复读:不可重复读是指事务 T1读取数据后,事务 T2执行更新操作,是 T1无法再现前一次读取结果,具体来讲还包括三种情况: 事务 T1读取某一数据后,事
42、务 T2对其做了修改,当事务 T1再次读该数据时得到与前一次不同的值; 事务 T1按一定条件从数据库中读取了某些数据记录后,事务 T2删除了其中部分记录,当 T1再次按相同的条件读取数据时,发现某些记录已经消失了; 事务 Tl按一定条件从数据库中读取某些数据记录后 ,事务 T2插入了一些记录,当 T1再次按照相同条件读取数据时发现多了一些记录。 读 “脏 ”数据:读 “脏 ”数据是指事务 T1修改某一数据并将其写回磁盘,事务 T2读取同一数据后, T1由于某种原因被撤销,这时 T1修改过的数据恢复原值, T2读到的数据就与数据库中的数据不一致,即 T2读到了 “脏 ”数据。 在本题中, T1和
43、 T2都读取了数据 B,然后 T1修改了 B,并写回, T2修改了B,也写回,这时, T2的写回明显覆盖了 T1的写回,即 T1对 B的修改没有得到体现,即丢失了更新。 【知识模块】 数据库系统 23 【正确答案】 B 【试题解析】 证其前面的计算,重新进行求和操作,但这时读取到的 X是被 T1修改后的 X,这时无论 T2如何计算,验证结果都是不对的。结合试题 27的分析,不难知道这是出现了不可重复读的情况。 【知识模块】 数据库系统 24 【正确答案】 C 【试题解析】 数据约束是用来确保数据的准确性和一致性的。常见的 4种数据约束如下: (1)实体完整性约束:规定表的每一行在表中是唯一的实
44、体。 (2)域完整性约束:是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取 值范围、精度等规定。 (3)参照完整性约束:是指两个表的主关键字和外关键字的数据应一致,保证了表之间数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。 (4)用户定义的完整性约束:不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定系数据库的约束条件,反映某一具体应用必须满足的语义要求。 在上述四种数据约束中,不属于关系模型定义的三种数据约束的是域完整性约束。 【知识模块】 数据库系统 25 【正确答案】 A 【试题解析】 本题主要考查故障的种类。
45、 事务故障是非预期的,是不能由应用程序处理的故障如运算溢出、并行事务发生死锁而被选中撤销该事务等。事务故障意味着事务没有到达预期的终点。 系统故障是指造成系统停止运转的任何事件,使得系统重新启动,如中央处理器故障、操作系统故障、突然停电等。 介质故障又称硬故障,是指外存故障,如磁盘的磁头碰撞、瞬时的强磁场干扰等。 在本题中,显然发生的是事务故障。 【知识模块】 数据库系统 【知识模块】 数据库系统 26 【正确答案】 D 【知识模块】 数据库系统 27 【正确答案】 D 【知识模块】 数据库系统 28 【正确答案】 C 【知识模块】 数据库系统 29 【正确答案】 B 【知识模块】 数据库系统
46、 30 【正确答案】 D 【试题解析】 本题主要考查关系模式的基础知识。 在本题中,题目告诉每个科室有一位负责人和若干名职工,而一名职工只属于一个科室,那么很容易就能知道科室与职工的所属联系类型为 1: n。 另外,题目告知一个医生可以为多个病患看病,一个病患可以由多个医生多次诊治,所以病患与医生的就诊联系类型为多对多。 科室关系模式的主键无疑是科室号,因为它能唯一标识一条记录,而它的外键应该是负责人,负责人也是职工,而这里应该用职工号的标识负责人的属性值,因此负责人应该是外键。 根据题目意思,就诊应该是病患与医生之间的联系,他们之间的联系是多对多,因此其联系要转换为独立的关系模式时,应该包含
47、病患和医生关系模式的主键及自身的一些属性,如就诊时间,就诊情况。病患的主键是病历号,职工关系模式的主键为职工号,因此就诊关系模式为就诊 (病历号,职工号,就诊时间,就诊情况 ), 而该关系模式的主键是 (病历号,职工号,就诊时间 ),因为这才能唯一标识一条记录。至于主键为什么不是 (病历号,职工号 ),是因为存在同一个病人多次看同一个医生的情况,所以 (病历号,职工号 )不能唯一标识一条记录。 题目告知科室关系中的科室名是唯一的,并要求指出外码,因此后两个空应分别指出科室名是唯一的和指出外码,指出科室名是唯一的需要用到关键字UNIQUE,在前面已知科室关系的外码是负责人,因此指出其外码的语句为FOREIGN KEY(负责人 )REFERENCES职工 (职工号 )。 【知识模块】 数据库 系统