1、计算机三级(数据库技术)模拟试卷 28及答案与解析 一、选择题 1 设有关系模式 R(A, B, C, D),其函数依赖集为 F=AD , BD , CD 。如果将 R分解为 R1(A, B, C)和 R2(C, D),则该分解是 ( )。 ( A)同时保持函数依赖和无损连接的分解 ( B)保持函数依赖但不保持无损连接的分解 ( C)保持无损连接但不保持函数依赖的分解 ( D)既不保持函数依赖也不保持无损连接的分解 2 下面关于模式分解的说法,错误的是 ( )。 ( A)分解并不总能提高查询效率 ( B)分解通常 使得涉及属性少的查询执行效率更高 ( C)分解通常使得简单的更新事务执行效率更高
2、 ( D)分解总是能降低存储空间的要求,因为它能消除冗余数据 3 设有关系表:职工 (职工号,姓名,领导职工号 ),其中职工号是主码,领导职工号是外码。当前表中没有任何数据。现在依次向该表中插入如下数据 (1)(el, Tom, e2) (2)(e3, Jerry, null) (3)(null, Foo, null) (4)(e2, Fake, e2) (5)(e1, Ghost, e3) (6)(e4, Who, e1) 则最终该表中有 ( )行数据。 ( A) 2 ( B) 3 ( C) 4 ( D) 5 4 数据库物理设计阶段是根据数据库逻辑设计的结果设计合适的数据库物理结构。下列关于
3、数据库物理设计的说法,错误的是 ( )。 ( A)物理设计着眼于数据库底层的物理存储与存取,与操作系统和硬件环境及数据库管理系统密切相关 ( B)物理设计时需要合理安排不同的存储介质,索引文件一般存储在高速磁盘中,日志文件可以考虑存储在磁带中 ( C)物理设计过程中需要考虑设置合理的数据库管理系统参数和操作系统相关参数 ( D)物理设计过程中需要考虑 RAID级别 、操作系统的文件管理机制、数据库管理系统支持的索引类型 5 三层浏览器服务器架构是现在比较流行的应用系统架构。下列关于此架构的说法,错误的是 ( )。 ( A)表示层使用 Web浏览器实现,位于客户端,一般无需安装其他程序 ( B)
4、数据层位于数据库服务器,由 DBMS完成数据存储和数据存取等数据管理功能 ( C)此架构将人机交互、应用业务逻辑和数据管理三类功能分离,提高了可维护性 ( D)与二层的客户服务器架构相比,此架构在交互性、运行速度方面优势明显 6 设有下列关于数据库分析、设计与实现的工 作: 用概念数据模型表示数据对象的特征及其相互间的关联关系 进行数据库的备份与恢复等日常维护 在 ER图的基础上确定数据库关系模式 调整数据库逻辑模式,确定文件组织与存取方式,评估物理模式 考虑分析 DBAS运行过程中备份数据库策略,如备份时间点和备份周期 事务和应用程序的编码及测试 上述工作中,属于 DBAS系统设计阶段工作的
5、是 ( )。 ( A)仅 、 、 、 和 ( B)仅 、 、 和 ( C)仅 、 和 ( D)全部 7 下列是关于关系数据模型和关系表的说法: 关 系数据模型以集合论为基础表示和处理数据 关系数据模型同时支持非过程化语言和过程化语言直接存取数据 “create table” 语句用于定义关系表的结构及数据完整性约束 在关系表上执行 select或 delete操作时, DBMS会检查数据完整性约束 上述说法中正确的是 ( )。 ( A)仅 和 ( B)仅 和 ( C)仅 和 ( D)仅 和 8 在进行数据库物理设计时,为了保证系统性能,需要综合考虑所选择的数据库管理系统的特性及软硬件具体情况。
6、下列关于数据库物理设计的说法,错误的是( )。 ( A)在频繁执行插入、修改和删除操作的表上建立索引可能会降低系统整体性能 ( B)在一张表的某列上需要频繁执行精确匹配查询时,可以考虑为此列建立哈希索引 ( C)为了提高写入性能,数据库一般应尽量避免存储在 RAIDl0的磁盘存储系统中 ( D)如果系统中存在频繁的多表连接操作,可以考虑将这些基本表组织为聚集文件,以提高查询效率 9 类图技术是面向对象方法的核心技术。下列所示 UML的类图,正确的是 ( )。10 设在 SQL Server 2008某数据库中有表 SC(Sno, Cno, Grade),其中 Grade列的类型为 int。若在
7、查询成绩时,希望将成绩按 “优 ”、 “良 ”、 “中 ”、 “及格 ”和 “不及格 ”形式显示,则下列 Case函数中正确的是 ( )。 ( A) Case Grade When Grade between 90 and 100 THEN Grade=优 When Grade between 80 and 89 THEN Grade=良 When Grade between 70 and 79 THEN Grade=中 When Grade between 60 and 69 THEN Grade=及格 Else Grade=不及格 End ( B) Case Grade When Grad
8、e between 90 and 100 THEN优 When Grade between 80 and 89 THEN良 When Grade between 70 and 79 THEN中 When Grade between 60 and 69 THEN及格 Else不及格 End ( C) Case When Grade between 90 and 100 THEN Grade=优 When Grade between 10 and 89 THEN Grade=良 When Grade between 70 and 79 THEN Grade=中 When Grade between
9、 60 and 69 THEN Grade=及格 Else Grade=不及格 End ( D) Case When Grade between 90 and 100 THEN优 When Grade between 80 and 89 THEN良 When Grade between 70 and 79 THEN中 When Grade between 60 and 69 THEN及格 Else不及格 End 11 设在 SQL Server 2008某数据库中有销售表 (商品号,销售时间,销售数量,销售价格 ),其中商品号的类型为 char(6),销售价格的类型为 int。现要定义统计指定
10、商品销售总价的标量函数。有下列定义该标量函数的语句: Create FUNCTION dbo GetTotal(GoodID char(6) Returns int AS BEGIN Return(SELECT SUM(销售价格 )FROM销售表 WHERE商品号 =GoodID) END Create FUNCTION dbo GetTotal(GoodID char(6) Returns int AS BEGIN Retums(SELECT SUM(销售价格 )FROM销售表 WHERE商品号 =GoodID) END Create FUNCTION dbo GetTotal(GoodID
11、 char(6) Returns int BEGIN Return(SELECT SUM(销售价格 )FROM销售表 WHERE商品号 =GoodID) END Create FUNCTION dbo GetTotal(GoodID char(6) Returns int Returns(SELECT SUM(销售价格 )FROM销售表 WHERE商品号 =GoodID) 上述语句中,正确的是 ( ) ( A)仅 和 ( B)仅 和 ( C)仅 和 ( D)仅 和 12 分区表是将一个表的数据按水平方式划分为不同的子集,从而可以更快速有效地访问数据子集。现有表 R(A, B)以及针对该表的如下
12、 SQL语句,如果基于列 A对 R进行范围分区,该分区设计方案能提高其性能的 SQL语句是 ( )。 ( A) SELECT A, SUM(B)FROM R GROUP BY A ( B) SELECT A FROM R ORDER BY B, A ( C) DELETE FROM R WHERE AY的蕴涵表达式。关联规则的强度可以用它的支持度 (s)和置信度 (c)度量。支持度确定规则可以用于给定数据集的频繁程度,而置信度确定 Y在包含 X的事务中出现的频繁程度。两者可以用公式表示:从题目中可以看到事务总数是 5, A的 啤酒、尿布 支持度计数是 3, 啤酒 支持计数是 3,所以 s=0
13、6, c=1。同理可得 B面包、尿布 支持计数为 3, 面包、尿布、牛奶 支持计数是 2,所以 s=0 4, c=2 3。 C中, 面包、牛奶 支持计数为 3, 面包 支持计数为 4,所以 s=0 6, c=0 75。 D中, 面包、啤酒 支持计数为 2, 面包、啤酒、尿布 支持计数为 2,所以 s=0 4, c=1。综上所述,应选择 A选项。 30 【正确答案】 D 【试题解析】 元数据是关于数据的数据,或者叫做描述数据的数据。元数据描述了数据的结构、内容、链和索引等项内容。在关系数据中,这种描述就是对数据库、表、列等其他对象的定义。因此可推出, 、 和 不属 于元数据。所以选择 D选项。
14、二、应用题 31 【正确答案】 矩形框 【试题解析】 IDEF0需求建模方法由箭头和矩形框两种元素构成。矩形框代表功能活动,写在矩形框内的动词短语描述功能活动的名称。 32 【正确答案】 网络 【试题解析】 防火墙作为一个分离器、限制器和分析器,用于执行两个网络之间的访问控制策略,有效地监控了内部网络和外部网络之间的各种活动,保护网络内部的关键资源。因此防火墙技术是用来保证数据库应用系统的网络环境安全的。 33 【正确答案】 事件 【试题解析】 在 UML的状态机图中,状态之间的转移是由事件驱动的。 34 【正确答案】 前 【试题解析】 SELECT基本语法格式是: SELECT。查询内容 F
15、ROM表名WHERE条件表达式 GROUP BY待分组的列名 HAVING列名 ORDER BY待排序的列名。 35 【正确答案】 INTO 【试题解析】 SELECT INTO语句表示从一个表中选取数据,然后把该数据插入到另一个表中。该语句结构通常用于创建表的备份复件或者用于对记录进行存档。该语句使用时要求目标表不存在,因为在插入时会自动创建。 36 【正确答案】 EXISTS 【试题解析】 本题主要是查询 Student表中是否存在 SC表中一条特定的记录,在 SQL语句中被称为存在性测试。 SQL语句通过子查询,使用 EXISTS谓词进行存在性测试。其形式是: WhereNOTEXIST
16、S(子查询 )。带 EXISTS谓词的子查询不返回查询的结果,只产生逻辑真值和逻辑假值。 EXISTS的含义是:当子查询中有满足条件的数据时, EXISTS返回真值,否则返回假值。 NOT EXISTS的含义是:当子查询中有满足条件的数据时, NOT EXISTS返回假值,当子 查询中不存在满足条件的数据时, NOT EXISTS返回真值。 37 【正确答案】 PRIOR 【试题解析】 游标指针各个参数含义: NEXT返回紧跟在当前行之后的数据行,并且当前行递增为结果行; PRIOR返回紧跟当前行前面的数据行,并且当前行递减为结果行; FIRST返回游标中的第一行并将其作为当前行; LAST返
17、回游标中的最后一行并将其作为当前行。 38 【正确答案】 DROP 【试题解析】 删除架构用 DROP关键字。 39 【正确答案】 Windows 【试题解析】 在 SQL Server 2008中,有两种身份验证模式,一种是混合身份验证模式,另一种是 Windows身份验证模式。 40 【正确答案】 物化 【试题解析】 物化视图是一种包含查询结果的数据库对象,其数据不是在视图使用时读取的,而是预先计算好的。 41 【正确答案】 派生 【试题解析】 派生性冗余列是指表中增加的列由表中的一些数据项经过计算生成。它的作用是在查询时减少接连接操作,避免使用聚合函数。 42 【正确答案】 日志 【试题
18、解析】 日志文件记录每个事物对数据库的修改操作,数据库系统在 运行过程中,将所有事物的修改操作记录到日志文件中。在动态转储中,利用转储文件只能将数据库恢复到转储过程中的某个状态,且转储文件中的数据可能处于不一致状态,只有和日志文件综合起来使用,才能将数据库恢复到一致状态,或将数据库恢复到故障发生前的状态,从而有效地恢复数据库。 43 【正确答案】 两 【试题解析】 两阶段的提交协议将场地的事务管理器分为协调者和参与者,通过协调者在第一阶段询问所有参与者事务是否可以提交,参与者做出应答,在第二阶段协调者根据参与者的回答决定事务是否提交。 44 【正确答案】 时间 【试题解析】 时间序列分析也可以
19、称为数据演变分析,它能描述行为随时间变化的对象的规律或趋势,并对其进行建模。 45 【正确答案】 支持 【试题解析】 在关联规则挖掘中,关联规则的成立与否一般用支持度和置信度两个指标进行描述。 三、设计与应用题 46 【正确答案】 ER模型如下所示: 【试题解析】 ER图的画法 建立相应的 ER图的过程如下: 第一,确定实体类型。本题有两个实体类型,即顾客实体和商品实体。 第二,确定联系类型。该题中只有顾客一商品模型。 第三,把实体类型和联系 类型组合成 ER图。 第四,确定实体类型和联系类型的属性。 顾客实体集属性:姓名、单位、电话号码 商品实体集属性:型号、名称、产地、单价 由顾客和商品两
20、个实体和一个顾客一商品购买关系,并且根据实体的属性可以画出相应 ER图。 47 【正确答案】 将 ER模型转换为关系模型,并规范到 3NF: 顾客 (姓名,单位,电话号码 ),主键:姓名 商品 (型号,名称,单价,产地 ),主键:型号 购买 (姓名,型号,数量,日期 ),主键:姓名 +型号 因为转换过来的关系模式中,不存在属性依赖于其他非主属性,因此对转换的结果不需要优化。 【试题解析】 ER模型转换为关系模式的规则 把 ER模型中的每一个实体集转换为同名的关系,实体集的属性就是关系的属性,实体集的码就是关系的码。 把 ER模型中的每一个联系转换成一个关系,与该联系相连的各实体集的码以及联系的
21、属性转换为关系的属性。关系的码根据下列情况确定: 若联系为 1: 1(一对一 ),则每个是实体集码均是该关系的候选码。 若联系为 1: n(一对多 ),则关系的码为 n端实体集的码。 若联系为 m: n(多对多 ),则关系的码为各实体集码的组合。 合并具有相同码的关系。 根据规则,把一个 ER模型转换为 关系模式,一般经历下面两个步骤: 1)标识 ER模型中的联系。 2)依次转换与每个联系相关联的实体集及联系。 3)关系模式满足 3NF,则必须满足关系模式中每隔一个非主属性既不部分依赖于码也不传递依赖于码,简而言之,第三范式就是属性不依赖于其他非主属性。 本题中从 ER模型转换成关系模型,由两
22、个实体和一个关系分别可以转换成三个关系模式。 48 【正确答案】 SELECT LOANS借书证号,姓名,系名, COUNT(*)AS借书数量 FROM BORROWER, LOANS WHERE BORROWER借书证 号 =LOANS借书证号 GROUP BY LOANS借书证号 HAVING COUNT(*)=5; 【试题解析】 采用两表联合查询。以两表 “借书证号 ”为相等条件,在结果集中用GROUP BY按照 “借书证号 ”来分类,并且用 HAVING关键字统计出符合条件的记录数。 49 【正确答案】 SELECT姓名,系名,书名,借书日期 FROM BORROWER, LOANS,
23、 BOOKS WHERE BORROWER借书证号 =LOANS借书证号 AND LOANS图书登记号=BOOKS图书登记号 AND索书号 IN ( SELECT索书号 FROM BORROWER, LOANS, BOOKS WHERE BORROW借书证号 =LOANS借书证号 AND LOANS图书馆登记号 =BOOKS图书登记号 AND姓名 =“王丽 ” ) 【试题解析】 采用 IN关键字进行两表联合查询,在 BORROWER和 LOANS联合的结果集中查找满足第三个表指定的条件。 50 【正确答案】 CREATE TRIGGER tri_zc ON教师表 AFTER INSERT UP
24、DATE AS BEGIN DECLATEzc varchar(10), dept varchar(30) SELECTdept=所在部门号, 2c=职称 FROM inserted IFzc=教授 or副教授 Update部门表 SET高级职称人数 =高级职称人数 +1 Where部门号 =dept End 【试题解析】 创建触发器的 SQL语句为: CREATE TRIGGER,其语法格式为: CREATE TRIGGERschema_name trigger_name ONtable view FOR AFTER INSTEAD OF INSERT, DELETE, UPDATE ASsql_statement ; 其中 AFTER指定触发器为后触发型触发器, INSERT, UPDATE和 DELETE为指定引发触发器执行的操作。根据原题要求, Insert触发器会在 inserted表中添加一条刚插入的记录, Up-date触发器会在更新数据后将更新前的数据保存在deleted表中,更新后的数据保存在 inserted表中。在教师表中插入或者更新的时候,都会在 inserted表中增加一条记录,所以只需在触发器查 询 inserted表中查询有没有 “教授 ”或者 “副教授 ”的记录,如果有,则触发修改相应部门的高级职称人数即可。