计算机等级考试三级数据库下半年考前模拟试题二答案.docx
- 文档编号:29333770
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:14
- 大小:37.17KB
计算机等级考试三级数据库下半年考前模拟试题二答案.docx
《计算机等级考试三级数据库下半年考前模拟试题二答案.docx》由会员分享,可在线阅读,更多相关《计算机等级考试三级数据库下半年考前模拟试题二答案.docx(14页珍藏版)》请在冰豆网上搜索。
计算机等级考试三级数据库下半年考前模拟试题二答案
计算机等级考试三级数据库2015下半年考前模拟试题
(二)答案
一、单选题
1.B【解析】数据模型三个要素包括:
①数据结构
数据结构是所研究的对象类型的集合。
它从语法角度表述了客观世界中数据对象本身的结构和数据对象之间的关联关系,是对系统静态特征的描述。
②数据操作
数据操作是对数据库中对象的实例允许执行的操作的集合,主要指检索和更新(插入、删除、修改)两类操作。
数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先级)以及实现操作的语言。
数据操作是对系统动态特性的描述。
③数据完整性约束
数据完整性约束是一组完整性规则的集合,规定数据库状态及状态变化所应满足的条件,以保证数据的正确性、有效性和相容性。
2.D【解析】数据库三级模式结构:
①内模式也称存储模式或物理模式,它是数据物理结构和存储结构的描述,是数据在数据库内部的表示方式。
并且一个数据库只有一个内模式。
②模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
它是数据库系统模式结构的中间层,不涉及数据的物理存储细节和硬件环境,与具体的应用和所使用的开发工具及高级程序设计语言无关。
③外模式也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的视图,是与某一应用有关的数据的逻辑表示。
外模式是模式的子集,一个数据库可以有多个外模式。
数据库系统的三级模式结构是指数据库由外模式、模式和内模式三级构成,并通过二级映象功能将三个模式联系起来。
3.C【解析】数据流图(DataFlowDiagram,简称DFD)是便于用户理解系统数据流程的图形表示。
DFD建模方法的核心是数据流,它能精确地在逻辑上描述系统的功能、输入、输出和数据存储等,从而摆脱了其物理内容。
数据流图是系统逻辑模型的重要组成部分。
DFD特性:
①抽象性:
在DFD中具体的组织机构、工作场所、物质流等都已经去掉,只剩下信息和数据存储、流动、使用以及加工的情况。
所以描述的是抽象出来的数据。
②概括性:
它把系统对各种业务的处理过程联系起来考虑,形成—个总体,可反映出数据流之间的概括隋况。
4.A【解析】如果关系模式R中不包含多值属性,则R满足第一范式,简称1NF,记作RClNF。
易知此题中RClNF,且R的所有非主属性不依赖于一个候选码,候选码(A、C)→(B、D)存在非主属性对主码的部分函数依赖,故不满足2NF,所以R最高clNF。
此题选A。
5.C【解析】逻辑设计的主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。
与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式,这一步设计的结果就是所谓的“逻辑数据库”。
ER图到关系模式的转换和定义数据的约束条件都是在逻辑设计层面上的操作,设计ER图是概念设计阶段的产物。
6.D【解析】数据库应用系统设计的四个层次分别为:
①表示层;②业务逻辑层;③数据访问层;④数据持久层。
在这四个层次中,数据持久层的设计工作属于数据组织与存储等方面的物理设计内容,而索引设计属于物理设计阶段。
因此,索引设计是在数据持久层上的设计。
7.B【解析】数据库物理设计阶段活动包括:
①数据库逻辑模式;②选择或配置基本关系表的文件组织形式,为基本关系表设计数据存取方法或存取路径;③数据分布设计;④安全模式设计;⑤确定系统配置;⑥物理模式评估。
8.B【解析】查询处理器中最主要的模块是查询编译器和查询执行器,负责DML语句解析和执行,因此B项中所阐述的不是存储管理器的功能,应该是查询处理器的功能。
9.D【解析】在UML类图中,常见的有以下几种关系:
①泛化(【箭头及指向】:
带三角箭头的实线,箭头指向父类);②实现(【箭头及指向】:
带三角箭头的虚线,箭头指向接口);③关联(【箭头及指向】:
带普通箭头的实心线,指向被拥有者);④聚合(【箭头及指向】:
带空心菱形的实心线,菱形指向整体);⑤组合(【箭头及指向】:
带实心菱形的实线,菱形指向整体);⑥依赖(【箭头及指向】:
带箭头的虚线,指向被使用者)。
D选项是属于组合关系,因此实心菱形的箭头应该指向“窗体”,即实心菱形应该标在窗体旁边。
10.A【解析】Ⅲ选项中INTERSECT返回两个集合皆有的数据,该SQL语句返回顾客A和B都购买的商品号,不符合题意;lV选项中的UNION查询出了顾客A购买的商品,通过UNION关键字合并了顾客B没有购买的商品,因此总的视图为顾客A购买的商品和B没有购买的商品总和,不符合要求。
Ⅰ、Ⅱ实现的是顾客A购买商品集合与顾客B购买商品集合的差集。
因此满足要求的为l和Ⅱ,答案为A。
11.C【解析】由题目存储过程可知,存储过程Pl定义了两个带有默认值的参数。
执行多个输入参数的存储过程时,参数的传递方式有两种:
按照参数位置传递值和按参数名称传递值。
如果定义了默认值,则在执行存储过程时可以不必指定该参数的值。
但若按照参数位置传递值时必须从左往右赋值,即不能跳过左边的某个默认参数而传递某个值。
Ⅱ中的参数赋值采用按参数位置传值,必须从左到右赋值。
其他三项均符合存储过程的调用规则。
12.C【解析】用FOR关键字定义的触发器为后触发型触发器,即只有在引发触发器执行的语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后才执行触发器。
其中INSERTED表用于存储INSERT和UPDATE语句所影响行的新值的副本,DELETED表用于存储DELETE和UPDATE语句所影响行的旧值的副本。
在执行“UPDATETSETb=100WHEREa=ˊa01ˊ”之后,T表为:
(ˊa01ˊ,100),INSERTED表内容变为:
(ˊa01ˊ,100),DELETED表内容变为:
(ˊa01ˊ,90)。
继续判断约束检查“SELECT*FROMinserted
WHEREbnotbetweenoandl00”,因为INSERTED表中的b等于l00,因此约束不成立,故触发器不执行。
13.C【解析】创建索引视图的步骤:
①使用SCHEMABINDING子句来创建一个视图。
这个视图必须符合许多要求,例如,它只能引用同一数据库中的基表,而不能是其它标准视图。
所有引用的函数必须是确定性的,行集函数、派生表和子查询都不能在索引视图中使用;②在视图上创建一个惟一索引。
这个索引的叶子级由视图的完整结果集组成;③在聚集索引的基础上根据需求创建非聚集索引。
非聚集索引可以按平常的方式创建;④创建并使用索引视图。
14.D【解析】在SQLServer2008中,ALTERDATABASE命令中的FILENAME对应的代码需要带上单引号,因此选项A和选项B错误。
FILEGROWTH如果加上%则为百分比,如果省略%,数据库系统则默认采用增加单位是MB,因此选项A和选项C错误。
故选D。
15.C【解析】索引视图可以提高下列查询类型的性能:
①处理大量行的联接和聚合;②许多杏询经常执行联接和聚合操作;③决策支持工作负荷。
索引视图通常不会提高下列查询类型的性能:
①具有大量写操作的OLTP系统;②具有大量更新的数据库;③不涉及聚合或联接的查询;@GROUPBY键具有高基数度的数据聚合。
高基数度表示列包含许多不同的值。
当GROUPBY后跟的列值包含许多不同的值,导致视图图和表的行数相等,那么该列使用索引视图并不能提高查询效率。
16.C【解析】所有的数据库用户不是继承数据库中guest用户的权限。
17.B【解析】在“Windows身份验证模式”下,所有Windows用户登陆到SQLServer服务器都无需再提供用户名和密码,但SQLServer会从用户登录到Windows时提供的用户名和密码查找当前用户的信息,判断其是否是SQLServer的合法用户,不是,则拒绝登录。
18.C【解析】数据库关于锁的优化原则为:
锁是并行处理的重要机制,能保持数据并发的一致性,即按事务进行处理。
系统利用锁保证数据的完整性。
虽然我们避免不了死锁,但在设计时可以充分考虑如何避免长事务,减少排它锁时间,减少事务与用户的交互时间,杜绝让用户长时间控制事务,还要避免批量数据同时执行,尤其是耗时长并使用相同的数据表。
Ⅰ中采用排他锁则限制了数据的共享,降低了并发度,其他选项均能提高并发度。
19.D【解析】数据库应用系统日常维护工作一般包括数据库的备份、锁管理、日志的维护等。
若是对运行要求级别较高的数据库采用人工监控的办法,则容错性低、成本大,因而一般采用自动监控手段提高性能。
20.B【解析】数据库维护的主要内容有以下几方面:
①数据库的转储和恢复;②数据库安全性、完整性控制;③数据库性能的检测和改善;④数据库的重组和重构。
Ⅳ选项不属于数据库维护工作。
21.B【解析】增强硬件配置是一种方法,但我们平时遇到的最多的问题是如何在无法增强硬件配置的情况下将数据库性能优化,因此在实际应用过程中,数据库本身的优化占的比重很大,而且优化效果也最明显。
22.B【解析】A中在调试应用程序时,如果数据入库尚未完成,数据库没有数据,应用程序的调试将会出现一定的困难;C项中数据库重构应该尽量避免应用程序的改动;D项中经常查询的列应该建立索引。
23.B【解析】Raid5需要3块硬盘,并把数据和相对应的奇偶校验信息存储到组成raid5的各个磁盘上。
其中任意N一1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息。
因此可用空间为300+300=600G。
24.C【解析】因为3点进行了数据库全备份,而日志又保存在另一个磁盘中,且存放日志的磁盘未损坏。
因此在故障发生时,先对结尾日志备份,然后依次使用数据库全备份、日志备份和结尾日志备份,可以将数据库数据恢复到10点30分的状态。
25.D【解析】数据库的恢复顺序如下:
①恢复最近的完全数据库备份;②恢复完全备份之后的最近的差异数据库备份;③按日志备份的先后顺序恢复自最近的完全或差异数据库备份之后的所有日志备份。
26.A【解析】XML数据库需要对XML文档进行解析,因为XML文档的本身标记只是文档本身的描述,需要经过数据库的解析才能达到具体的用途。
27.C【解析】集中式是指所有的数据片断都安排在一个场地上。
分割式是指所有全局数据只有一份,它们被分割成若干片断,每个片断被分配在一个特定的场地上。
全复制式是指全局数据有多个副本,每个场地上都有一个完整的数据副本。
混合式是指全局数据被分为若干个数据子集,每个子集都被安排在一个或多个场地上,但是每个场地未必保存所有数据。
以上四种分配方式各有千秋,但复制式在每个分场都有完整的的数据,这样大大减少了各部门对全局数据的访问。
因此采用复制式数据分配能够提高每个场地的响应速度。
28.C【解析】A中的0LTP应用需要进行大量的并行事务,因此若采用共享内存结构会引起大量数据冲突;B中分布式数据库查询中,导致数据传输量大的原因主要是数据间的连接和并操作;D中分布式数据库因为不同的分片和副本,因此很多时候在一个场地完成提交不能完成全局事务,如虽完成某片数据更新,却并没有完成全局数据更新。
29.C【解析】元数据是关于数据的数据,或者叫做描述数据的数据。
元数据描述了数据的结构、内容、链和索引等项内容。
在关系数据中,这种描述就是对数据库、表、列等其他对象的定义。
因此可推出,1、Ⅲ和V不属于元数据。
选C。
30.D【解析】由关联规则Q→D计算过程可知:
支持度=事务中同时包含X、Y的百分比,置信度=在事务已经包含X的情况下包含Y的百分比。
则可以计算出事务同时包含C、D的支持度为:
3/5=60%,在包含D的情况下,包含C的百分比为:
3/3=100%,因此D选项满足要求,其他选项均不满足最小支持度或者最小置信度。
二、应用题
1.DDL
【解析】数据库模式定义语言DDL(DataDescriptionLanguage)是用于描述数据库中要存储的现实世界实体的语言。
2.索引列列值
【解析】对数据文件和它的一个特定的索引文件而言,如果数据文件中的数据记录的排列顺序与索引文件中索引项的排列顺序相一致,或者说,索引文件按其索引列列值指定的顺序与数据文件中的数据记录的排列顺序相一致,则该索引文件称为聚集索引。
否则,该索引文件称为非聚集索引。
3.时间
【解析】时间图适用于当状态的转移与时间密切相关时,同时强调时间因子在状态转移过程中的重要作用。
4.TOP
【解析】题目要求查询成绩最高的前3名学生的学号和成绩,因此需要用TOP关键字。
Top3只能查询出前3行的数据,无论这3行数据是否有重复,只能机械的选出前3行记录。
5.标量
【解析】SQLServer2008支持三种用户自定义函数:
标量函数、内嵌表值函数和多语句表值函数。
标量函数可以出现在SELECT语句目标列中,其他两个函数必须放在SELECT语句的FROM子句中。
6.INSTEADOF
【解析】要在表T上建立一个针对插入操作的前触发器,则根据触发器创建的SQL语句语法可知:
IN-STEADOF创建前触发器,FOR或AFTER创建后触发器。
7.FOR
【解析】SQLServer2008游标声明的语句格式为:
DECLAREvendor_cursorCURSORFORSELECT…
8.MDF
【解析】SQLServer2008中,用户数据库的数据文件的主要拓展名为MDF。
9.DENYDELETE
【解析】SQLServer2008中设置不允许用户获得对表的某种操作权限的命令为:
DENY对象权限名ON{表名|视图}TO{数据库用户名|用户角色名}。
10.运行管理与维护
【解析】优化SQL语句执行效率属于数据库应用系统运行管理与维护阶段的任务。
11.先来先服务
【解析】为了避免活锁的现象的发生,DBMS一般采用先来先服务(FIFS)策略处理事务的数据操作请
求。
即当多个事务请求对同一数据项Q加锁时,DBMS按照事务请求加锁的先后顺序对这些事务排队,先请求的事务排在队中靠前的位置。
定义在Q上的锁一旦释放,DBMS将锁分配给队列中的第一个事务。
利用这个策略,各个事务都可以按照时间顺序访问Q,避免了活锁现象。
12.日志
【解析】数据库出现事务故障和系统故障时,需要使用数据库的日志文件进行恢复。
13.分片
【解析】分布式数据库的分片透明性是最高级别的透明性,位于全局概念与分片模式之间。
14.M
【解析】MOLAP称为基于多维库的0LAP,这种OLAP的核心是多维数据库技术。
MOLAP工具以多维数据库的形式将元数据、基础事实数据和导出数据存储在以多维数组为基本存储结构的多维数据库中。
15.小
【解析】一般将综合级别称为粒度,粒度越大,表示综合程度越高,粒度越小,表示细节程度越高。
三、设计与应用题
1.【解题思路】
ER模型和关系模式相互转换的一般规则如下:
(1)将每一个实体类型转换成一个关系模式,实体的属性为关系模式的属性。
f21对干一元联系,按各种情处理,如下表格所示。
二元关系
ER图
转换成的关系
联系的处理
主键
外键
1:
1
1->1
(2个关系)
模式A
模式B
(有两种)
处理方式
(1):
把模式B的主键,
联系的属性加入模式A
处理方式
(2):
把模式A的主键,
联系的属性加入模式B
(略)
(依据联系的处理方式)
方式
(1):
模式B的主键为模式A外键
方式
(2):
表A的主键为表B的外键
1:
N
1->n
(2个关系)
模式A
模式B
把模式A的主键,联
系的属性加入模式B
(略)
模式A的主键为模式B的外键
M:
N
m->n
(3个关系)
模式A
模式B
模式A-B
联系类型转换
成关系模式A-B;
模式A-B的属性:
(a)联系的属性
(b)两端实体类型的主键
两端实体类型的
主键一起构成模
式A-B主键
两端实体类型的主
键分别为模式A-B的外键
此题为关系模式转换为实体类型,因此采用实体→关系的逆向思维解题。
从模式R1和R2可知,R1和R2为一对一关系,根据这两个模式的拆分可以确定三个实体,此处将这三个实体分别命名为A、B和C。
其中A、B和C分别一一对应,且a和c分别是B和C的外键。
从模式R1和R4可知,R1和R4为多对一关系,由此确定实体D。
从模式R3和R4可知,R3和R4为多对一关系,由此可以确定出实体E。
【参考答案】
a、c为A的候选码,可任选其一做主码。
可通过以下ER图来表示:
2.【解题思路】
用户定义的多语句表值函数的命令格式为:
CREATEFUNCTION[schema_name.]functionname
([{@parameter_name[AS][type_schema_name.]parameter_data_type
[=default]}
[….n]
]
)
RETURNS@return_variableTABLE
[WITH[[,]…n]]
[AS]
BEGIN
function_body
RETURN
END
[;]
:
:
=
({
J}
[][,…n]
)
题目要求返回指定类别下的每种商品在2012年的销售总利润,并且将结果按照销售总利润的降序输出。
采用复合SQL语句的格式,先查出指定类别的所有商品号:
SELECT商品号FROM商品表WHERE类别=@lb,其中@lb为函数的传人参数,然后在销售表中用GROUPBY对商品号进行分组,并采用SUM计算每个分组的总和。
【参考答案】
第一空:
RETURNS
第一空:
table
第三空:
SELECTa.商品号,SUM(销售数量*(销售单价一进货单价))AS总利润FROM销售表aJOIN商品表bONa.商品号=b.商品号WHEREa.商品号IN(SELECT商品号FROM商品表WHERE类别=@lb)GROUPBYa.商品号0RDERBY总利润DESC
第四空:
RETURN@ProfitTable
3.【解题思路】
数据库性能优化的基本原则就是通过尽可能少的磁盘访问获得所需要的数据。
SQLSERVER性能优化一般从数据库设计、应用程序编码、硬件优化、数据库索引、SQL语句、事务处理几个方面人手考虑问题。
(1)分析阶段:
在系统分析阶段往往有太多需要关注的地方,系统各种功能性、可用性、可靠性、安全性需求吸引了我们大部分的注意力,但必须注意的是,性能往往是很重要的非功能性需求,必须根据系统的特点确定其实时性需求、响应时间的需求、硬件的配置等。
最好能有各种需求量化的指标。
(2)设计阶段:
例如数据库逻辑设计规范化;合理的冗余;主键的设计;外键的设计;字段的设计;数据库物理存储和环境的设计;数据库的物理存储、操作系统环境及网络环境的设计,皆使得我们的系统在将来能适应较多用户的并发操作和较大的数据处理量。
这里需要注意文件组的作用,适用文件组可以有效的把I/O操作分散到不同的物理硬盘,提高并发能力。
(3)系统设计:
整个系统的设计,特别是系统结构的设计对性能具有很大的影响。
对于一般的OLTP系统,可以选择C/S结构、三层的C/S结构等,不同的系统结构其性能的关键也有所不同。
系统设计阶段应归纳某些业务逻辑在数据库编程阶段实现,数据库编程包括数据库存储过程、触发器和函数。
用数据库编程实现业务逻辑的好处是减少网络流量并能更充分利用数据库的预编译和缓存功能;索引设计阶段可以根据功能和性能的需求进行初步的索引设计,这里需要根据预计的数据量和查询来设计索引,可能与将来实际使用时有所区别。
(4)编码阶段:
编码阶段首先需要所有程序员具备优化意识,也就是在实现功能的同时具备考虑优化性能的思想。
数据库是能进行集合运算的工具,所谓集合运算实际是批量运算,即是尽量减少在客户端进行大数据量的循环操作,而用SQL语句或者存储过程代替。
这个阶段主要是注意在SQL语句等方面的优化,如:
尽量少做重复的工作,用SELECT后跟需要的字段代替SELECT*语句,注意事务和锁,注意I临时表和表变量的用法,慎用游标和触发器,尽量使用索引等。
(5)硬件优化:
RAID(独立磁盘冗余阵列)是由多个磁盘驱动器(一个阵列)组成的磁盘系统。
通过将磁盘阵列当作一个磁盘来对待,基于硬件的RAID允许用户管理多个磁盘。
使用基于硬件的RAID与基于操作系统的RAID相比较可知,基于硬件的RAID能够提供更佳的性能,如果使用基于操作系统的RAID,那么它将占据其他系统需求的CPU周期,通过使用基于硬件的RAID,用户在不关闭系统的情况下能够替换发生故障的驱动器。
利用数据库分区技术,可均匀地把数据分布在系统的磁盘中,平衡I/0访问,避免I/0瓶颈等。
(6)事务处理调优:
数据库的日常运行过程中,可能面临多个用户同时对数据库的并发操作而带来的数据不一致的问题,如:
丢失更新、脏读和不可重复读等。
并发控制的主要方法是封锁,锁的含义即是在一段时间内禁止用户做某些操作以避免产生数据不一致。
对于事务性能的调优,要考虑到事务使用的锁的个数(在所有其他条件相同的情况下,使用的锁个数越少,性能越好)、锁的类型(读锁对性能更有利)以及事务持有锁的时间长短(持有时间越短,性能越好)等情形。
【参考答案】
根据SQLServer2008数据库的特性以及题目中的条件,综合给出以下的调优方案。
(1)表结构优化:
重新优化数据库设计结构,规范数据库逻辑设计;设计主键和外键;设计合适大小的字段。
(2)硬件优化:
购买一块同样大小的硬盘,将硬盘做成RAID5,用以提高数据库读写速度;增加服务器CPU个数;扩大服务器的内存。
(3)索引优化:
采用对经常作为条件查询的列设计索引,在查询中经常用到的列上建立非聚簇索引,在频繁进行范围查询、排序、分组的列上建立聚簇索引,对于有频繁进行删除、插入操作的表不要建立过多的索引。
(4)采用视图:
合理使用视图和分区视图,在需要更新和删除操作不多、查询操作频繁的表上建立索引视图。
(5)SQL语句优化:
选择运算应尽可能先做,并在对同一个表进行多个选择运算时,选择影响较大的语句放在前面,较弱的选择条件写在后面,这样就可以先根据较严格的条件得出数据较少的信息,再在这些信息中根据后面较弱的条件得到满足条件的信息。
应避免使用相关子查询,把子查询转换成联结来实现。
字段提取按照“需多少,提多少’’的原则,避免“SELECT*”,“SELECT*”需要数据库返回相应表的所有列信息,这对于一个列较多的表无疑是一项费时的操作,采用存储过程,使用存储过程提高数据处理速度。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机等级考试 三级 数据库 下半年 考前 模拟 试题 答案