2015计算机三级《数据库技术》考前冲刺试题(2)
18下列不属于信息系统需求分析的常用建模方法是( )。
A.ERB.IDEFOC.DFDD.UML
参考答案:A
参考解析:常用的需求建模方法包括:①DFD方法;②IDEFO方法;③UML方法。
19在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和整理。此过程不仅需要描述用户提出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述。设在某商场经营管理系统的需求分析阶段整理了下列需求:
Ⅰ.系统需要支持会员制
Ⅱ.系统不需要考虑财务核算功能
Ⅲ.系统应长期稳定运行
Ⅳ.系统应有销售统计功能
Ⅴ.系统应保证数据存储安全
上述需求中属于非功能需求的是( )。
A.仅Ⅲ和ⅣB.仅Ⅲ和VC.仅Ⅳ和VD.仅Ⅰ、Ⅱ和V
参考答案:B
参考解析:需求分析就是分析用户的应用请求。Ⅲ和Ⅴ不是用户所考虑的问题,Ⅴ属于系统的物理设计阶段,Ⅲ属于系统运行与维护阶段所考虑的问题。
20数据库概念设计是面向企业或组织中的数据需求的。下列有关概念模型设计的说法中,错误的是( )。
A.按照具有相同属性特征原则对客观事物进行分类,在分类的基础上概括命名,得到实体集
B.分析和定义实体集中的每一个实例,并用有意义的符号或文字分别描述它们
C.从一个联系的两端(两个方向)确定实体集之间联系的基数,并把联系的基数标注在模型中
D.要保证一个实体集中定义的每一个属性有意义、不重名
参考答案:B
参考解析:答案B是对实体集命名,即在标识实体集的基础上分类抽象,将具有相同属性特征的同类对象抽象为实体集,然后归纳整理,用一个有意义的名词或名词短语为每一个实体命名。它的描述是实体集中的每一个实例,所以错误。
21设某数据库中有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩)。现要查询没选课的学生姓名和所在系。下列语句中能够实现该查询要求的是( )。
A.SELECT姓名,所在系FROM学生表a LEFT JOIN选课表b
ON a.学号=b.学号WHERE a.学号IS NULLB.SELECT姓名,所在系FROM学生表a LEFT JOIN选课表b
ON a.学号=b.学号WHERE b.学号IS NULLC.SELECT姓名,所在系FROM学生表a RIGHT JOIN选课表b
ON a.学号=b.学号WHERE a.学号IS NULLD.SELECT姓名,所在系FROM学生表a RIGHT JOIN选课表b
ON a.学号=b.学号WHERE b.学号IS NULL
参考答案:B
参考解析:从数据库中查出没有选课的学生姓名和所在系,则在学生表中查出选课表中没有的学生即可。在这里采用LEFT JOIN来连接查询。并且要求选课表中的学生学号为NULL。
22关于并行数据库,下列说法错误的是( )。
A.层次结构可以分为两层,顶层是无共享结构,底层是共享内存或共享磁盘结构
B.无共享结构通过最小化共享资源来降低资源竞争,因此具有很高的可扩展性,适合于OLTP应用
C.并行数据库系统经常通过负载均衡的方法来提高数据库系统的业务吞吐率
D.并行数据库系统的主要目的是实现场地自治和数据全局透明共享
参考答案:D
参考解析:并行数据库系统的主要目的是通过高速通信介质连接多个可独立处理的单元以并行执行的方式完成对数据库系统的互联查询、内部查询及各种内部操作。分布式数据库系统的主要目的才是实现场地自治和数据全局透明共享。
23某跨国公司的业务系统需要提供全球性服务,该业务系统需要24小时×7天在线服务,系统业务繁忙,为了保证业务系统中数据库数据的安全,需要设计与实施数据转储机制,设计完成该数据库每天数据增量的转储需要2个小时,在不考虑成本因素的情况下,下列最合理的是( )。
A.配备高性能数据库服务器,通过事务传送机制实时地将数据库中的任何变化反映到备份环境中
B.每天划出长度为2小时的时间窗口tw,在tw内采用静态转储方法实现每天数据增量的转储
C.每天划出长度为2小时的时间窗口tw,在tw内采用动态转储方法实现每天数据增量的转储
D.每周做一次完全转储,每天选择浮动时间段对变化的数据进行转储
参考答案:A
参考解析:在静态转储过程中系统不能运行其他事务,因为会降低数据库的可用性;动态备份运行转储操作和用户事务并发执行,即允许在转储过程中对数据库进行存取和修改,动态储存虽然克服了静态储存的一些缺点,但是动态转储可能造成数据库的不一致性,使数据的有效性得不到保证。为了数据的有效性,需要引入日志文件,用它记录转出期问各种事务对数据库的修改活动记录,然后使用动态转储的备份副本加上日志文件就可以将数据库恢复到某一时刻的正确状态,因此8、c不合适。D中完全转储加增量转储,在这种转储方式下,恢复中使用的转储文件较多,其中任何一次转储出了问题都会导致恢复失败,同时恢复时间长,因此D也不可取。
24在大型企业的数据库应用系统中,联机事务处理(OLTP)和联机分析处理(OLAP)是常见的数据管理与数据分析形式。关于OLTP和OLAP,一般情况下,下列说法正确的是( )。
A.OLTP系统的安全性要求比OLAP系统的低,也比较容易实现
B.OLAP系统在访问数据时,一般以访问少量记录为主,OLTP系统则相反
C.OLTP要求系统必须具有很高的响应速度,而OLAP对系统响应速度的要求较为宽松
D.OLTP系统一般由企业的中上层或决策层使用,而OLAP系统一般由企业的中下层业务人员使用
参考答案:C
参考解析:OLTP是对数据库联机的日常操作,通常是对一条记录的查询和修改,要求快速响应用户的请求,对数据的安全性、完整性及事物吞吐量要求很高。而0LAP是对数据的查询和分析操作,通常是对海量历史数据的查询和分析,要访问的数据量非常大,查询和分析操作十分复杂。所以A、B错。又因为OLAP为宏观分析,OLTP为微观操作,所以前者面向中上层和决策者使用,而后者面向企业的中下层业务人员使用。所以D错。因此选C。
25当数据库系统出现故障时,可以通过数据库日志文件进行恢复。下列关于数据库日志文件的说法,错误的是( )。
A.数据库出现事务故障和系统故障时需使用日志文件进行恢复
B.使用动态转储机制时,必须使用日志文件才能将数据库恢复到一致状态
C.在OLTP系统中,数据文件的空间使用量比日志文件大得多,使用日志备份可以降低数据库的备份空间
D.日志文件的格式主要有以记录为单位的日志文件和以数据块为单位的日志文件两种
参考答案:C
参考解析:数据文件的空间使用量未必比日志文件大,因为日志是快速增长的。此外,使用日志备份并不能降低数据库的备份空间。所以选C。
26在进行数据库性能调优过程中,需要考虑数据库系统软件、硬件配置、网络环境等多方面因素。下列有关性能调优的说法,错误的是( )。
A.修改某些频繁使用的SQL语句,提高其性能,可能会大幅度降低数据库CPU使用率
B.随着服务器CPU处理能力提高、内存容量增大,现阶段数据库性能优化一般以更换服务器硬件为主要调优手段
C.当数据库服务器磁盘I0出现写瓶颈时,可以考虑使用高速磁盘存储常用数据,低速磁盘存储不常用数据
D.索引可以提高某些查询的速度,但也可能降低写入速度,同时也会增加磁盘空间使用
参考答案:B
参考解析:增强硬件配置是一种方法,但我们平时遇到的最多的问题是如何在无法增强硬件配置的情况下将数据库性能优化,因此在实际应用过程中,数据库本身的优化占的比重很大,而且优化效果也最明显。
27以下关于事务调度的说法错误的是( )。
A.调度分为串行调度和并发调度
B.串行调度的特点是一个事务的所有操作都执行完后才开始执行另一个事务
C.多个事务的调度必须保持每个事务的操作在事务中的执行顺序不变
D.并发调度中不同事务的操作不可以交叉执行
参考答案:D
参考解析:事务是构成数据库应用中一个独立逻辑工作单元的操作的集合,也是访问并可能更新数据库中各种数据项的一个程序执行单元。数据库系统通过执行各种事务实现对数据库数据的操作,管理和执行事务是DBMS的基本功能。事务的四大特性为:①原子性;②一致性;③隔离性;④持久性。事务调度则是为了保证事务的此四大特性。调度分为串行调度和并发调度。串行调度的特点是一个事务的所有操作都执行完后才开始执行另一事务,不存在事务操作的交叉执行;不同事务操作的交叉执行称为并发调度,DBMS交叉执行来自多个事务的各个操作,以提高数据库系统的性能。并发调度中不同的事务的操作可以交叉执行。
28设有某电子商务平台,该平台业务繁忙。为实现面向用户的精确营销,提高向用户推荐商品的成功率,需要建立数据仓库系统,并将数据仓库作为数据挖掘应用程序的数据源。设电子商务平台的OLTP环境中有销售数据表Tl和用户信息表T2。数据仓库用表T3保存近5年的销售细节数据,同时有用户信息表T4和用户商品推荐表T5。下列方案一般情况下最为合理的是( )。
A.实时更新T3,即每产生一条销售记录,就将该记录同时写到T1和T3中,并触发数据挖掘程序运行,以增加数据挖掘结果的准确性和实时性
B.当一个销售事务完成并生成销售记录后,触发数据挖掘程序在T1上执行并得到针对该用户的商品推荐列表,然后将商品推荐列表写到T5中。每隔数小时从T1获取新数据批量更新T3
C.根据T1的变化实时更新T3,每天定时运行数据挖掘程序,生成用户商品推荐列表,并将其写到T5中
D.每天根据T1对T3做一次批量更新,数据挖掘程序根据新数据生成用户商品推荐列表,并将其写到T5中
参考答案:D
参考解析:数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织的新技术。它的建立能充分利用已有的数据资源,把数据转换为信息,从中挖掘出知识,最终创造出效益。数据仓库有若干基本特征,包括不可更新性和随时间变化性。所谓不可更新性就是用户在提取仓库中的数据进行分析时并不会同时对数据仓库中的数据进行更新操作,而数据变化性是数据仓库每隔一段时间进行数据的更新和处理。综上可以看出,数据仓库的更新与时问间隔有关,所以不会实时更新,即排除A、C,又因为对用户进行推荐时要结合以往的历史数据而不是仅通过当前数据分析,即B错。综上可知,选项D正确。
29下列关于分布式数据库和并行数据库的说法,正确的是( )。
A.为了满足高并发业务的需要,共享内存结构的并行数据库比较适用于如银行出纳、民航售票等OLTP应用
B.在分布式数据库的查询中,导致数据传输量大的主要原因是数据间的连接操作和选择操作
C.如果数据分布不合理,并行数据库仅仅依靠多处理器、共享硬件资源等手段是无法实现真正意义上的并行处理的,也无法使其性能最优化
D.与集中式数据库系统的事务相比,分布式数据库系统中只需要一个场地完成提交即可完成一个全局事务,这正是分布式数据库的优越之处
参考答案:C
参考解析:A中的0LTP应用需要进行大量的并行事务,因此若采用共享内存结构会引起大量数据冲突;B中分布式数据库查询中,导致数据传输量大的原因主要是数据间的连接和并操作;D中分布式数据库因为不同的分片和副本,因此很多时候在一个场地完成提交不能完成全局事务,如虽完成某片数据更新,却并没有完成全局数据更新。
30日志文件对实现数据库系统故障的恢复有非常重要的作用。下列关于数据库系统日志文件的说法,正确的是( )。
A.数据库系统不要求日志的写入顺序必须与并行事务执行的时间次序一致
B.为了保证数据库是可恢复的,必须严格保证先写数据库后写日志
C.日志文件中检查点记录的主要作用是提高系统出现故障后的恢复效率
D.系统故障恢复必须使用日志文件以保证数据库系统重启时能正常恢复,事务故障恢复不一定需要使用日志文件
参考答案:C
参考解析:A日志写入顺序必须和并行事务执行的时间次序一致,因为这样才能在数据库恢复时进行red0和und0操作,从而保证数据的一致性而不会产生脏数据;B必须先写日志再写数据库,这样当数据库发生故障时可以根据日志完全恢复,否则如果先写数据,当数据刚写完时,数据库故障而没来得及写日志,导致数据恢复时发生错误。D事务恢复时同样需要日志,如red0、und0操作。所以选C。
二、应用题
31数据库管理系统为三级模式结构提供了两层映像机制,其中模式/内模式映像提供了【1】独立性。
参考解析:
物理
【解析】数据库系统的三级模式结构是由外模式、模式和内模式三级构成。模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征描述,是所有用户的公共数据视图,它是数据库系统的中间层。外模式是数据库用户能够看见和使用的局部数据的逻辑结构和特征描述,是数据库用户的数据视图。内模式是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。为了能够在系统内部实现这3个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像、模式/内模式映像。这两层映像分别保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
32按照数据库应用系统生命周期模型,系统设计阶段细分为概念设计、【2】设计和物理设计三个步骤。
参考解析:
逻辑
【解析】系统设计阶段分为概念设计、逻辑设计、物理设计。概念设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。逻辑设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构。
33设用UML设计某数据库应用系统,设计人员规划了一组应用程序集,该集合由动态链接库和可执行程序构成。为了展现这些应用程序集间的组织和依赖关系,以对源代码、可执行程序的发布等进行系统建模,应采用的UML图是【3】图。
参考解析:组件
【解析】组件图提供系统的物理视图。UML图形中组件图的用途是显示系统中的软件对其他软件组件(例如,库函数)的依赖关系,它可以在一个非常高的层次上显示,从而仅显示粗粒度的组件,也可以在组件包层次上显示。
34设有学生表(学号,姓名,所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全下列语句:
CREATE VIEW Vl(系名,人数)AsSELECT所在系名,【4】
FROM选课表JOIN学生表ON选课表.学号=学生表.学号【5】
参考解析:
第一空:COUNT(DISTINCT选课表.学号)
第二空:GROUP BY所在系名
【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTI ALL<列名>),表示对某列的值的计数,如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值。如果不指定DISTINCT短语或指定ALL短语,则表示保留重复值。由于是对不同系中的学生的学号统计,所以用GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。
35设有课程表(课程号,课程名,学分,先修课程号),已知某应用程序需要列出“数据库原理”课程的一门先修课程,查询结果要求输出(课程名,学分,先修课名称,先修课学分),可以用【6】连接操作在一个查询中实现此功能。
参考解析:自
【解析】自连接是SQL语句中经常要用的连接方式,使用自连接可以将自身表的一个镜像当作另一张表来对待,从而能够得到一些特殊的数据。简而言之,自连接的本意就是将一张表看成多张表来做连接。本题的SQL语句为:
select课程表.课程名,课程表.学分,先修表.课程名,先修表.学分from emp课程表,emp先修表where课程表.课程名=’数据库原理’and课程表.先修课程号=先修表.课程号。
36在SQL Server 2008的某用户数据库中,设有T表,现要在T表的c1列和c2列上建立一个复合唯一聚集索引,其中c1列值重复率为20%,c2列为l0%。请补全下列语句建立一个性能最优的索引:CREATE UNIQUE CLUSTERED INDEX Idxl ON T(【7】)
参考解析:c2,c1
【解析】聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。用户可以在最经常查询的列上建立聚簇索引以提高查询效率。UNIQUE表示要建立的每一个索引值对应唯一的数据记录,先对c2表索引然后对cl表索引,可以使索引的性能最优。
37在SQL Server 2008中,现要将T1表的C1列(int类型)定义为标识列,初值和增量值均为1。请补全下列语句:
CREATE TABLE T1(clint【8】(1,1),…)
参考解析:IDENTITY
【解析】此题考查了SQL SERVER中的identity用法。在数据库中,常用的一个流水编号通常会使用i-dentity栏位来进行设置,这种编号的好处是不会重复,而且是唯一的,这对table中的唯一值特性很重要,通常用来做客户编号、订单编号等。此处用IDENTITY作约束性定义,使C1可以成为标识列。
38在SQL Server 2008中,设ul是SQL Server身份验证模式的数据库服务器登录账户,现希望U1在该数据库服务器上具有系统管理员权限。请补全下列语句:
EXEC sp-addsrvrolememberˊU1ˊ,ˊ【9】ˊ
参考解析:sysadmin
【解析】EXEC sp_addsrvrolemember是登录账户角色,sp_addsrvrolemember是定义好的存储过程,其作用是为登录账户赋角色权限。数据库主要的角色及权限如下表所示:bulkadmin执行BULK INSERT语句
dbcreator创建、修改、删除和还原数据库
diskadmin管理磁盘文件
processadmin管理在SQL Server实例中运行的进程
securityadmin管理服务器登录账户
serveradmin配置服务器范围的设置
setupadmin添加和删除链接服务器
sysadmin在SQL Server中进行任何活动,该角色的权限跨越所有其它固定服务器角色
39数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中【10】协议可以完全保证并发事务数据的一致性。
参考解析:三级加锁
【解析】三级加锁协议也称为三级封锁协议.,它保证正确地调度事务的并发操作,是事务对数据库对象加锁、解锁必须遵守的一种规则。在运用x锁和s锁对数据对象加锁时,还需要约定一些规则,例如何时申请x锁或S锁、持锁时间、何时释放等。