
一、单项选择题(共40分;1-20题每题1分,21-30题每题2分)
1、下列不属于数据库应用系统物理设计阶段活动的是()。
A)数据库物理结构设计
B)数据库事务详细设计
C)应用程序详细设计
D)数据库备份与恢复设计
2、在一个ER图中,包含三个实体集,两个二元一对多联系,两个二元多对多联系,则将该ER图转化为关系模型后,得到的关系模式个数是()。
A)4个
B)5个
C)6个
D)7个
3、DFD建模方法由四种基本元素组成,其中用来描述数据的提供者或使用者的是()。
A)数据流
B)处理
C)数据存储
D)外部项
4、从功能角度数据库应用系统可以划分为四个层次,其中负责与DBMS交互以获取应用系统所需数据的是()。
A)表示层
B)业务逻辑层
C)数据访问层
D)数据持久层5、从功能角度数据库应用系统可以划分为四个层次,其中负责与DBMS交互以获取应用系统所需数据的是()。
A)表示层
B)业务逻辑层
C)数据访问层
D)数据持久层
6、已知有关系:学生(学号,姓名,年龄),对该关系有如下查询操作:
SELECT学号FROM学生
WHERE姓名LIKE'张%'AND年龄!=15
为了加快该查询的执行效率,应该()
A)在学号列上建索引
B)在姓名列上建索引
C)在年龄列上建索引
D)在学号和年龄列上建索引
7、已知有关系R(A,B,C),其中A是主码,现有如下创建索引的SQL语句:
CREATE CLUSTERED INDEX idx1ON R(B)
则下列说法中正确的是()。
A)idx1既是聚集索引,也是主索引
B)idx1是聚集索引,但不是主索引
C)idx1是主索引,但不是聚集索引
D)idx1既不是聚集索引,也不是主索引
8、在完成数据库的物理设计之后,就进入数据库系统的实施阶段。设有下列活动:
Ⅰ.创建数据库
Ⅱ.装载数据
Ⅲ.编写应用程序
Ⅳ.数据库监控与分析
Ⅴ.数据库性能优化
上述活动中,属于数据库系统实施阶段任务的是()。
A)仅Ⅰ、Ⅱ和Ⅲ
B)仅Ⅰ、Ⅱ和ⅣC)仅Ⅰ、Ⅱ和Ⅴ
D)仅Ⅰ、Ⅱ、Ⅲ和Ⅳ
9、在使用UML对数据库应用系统进行建模的过程中,状态图和活动图是常见的动态建模机制。有下列状态图和活动图:
I.
II.
III.
IV.
以上状态图或活动图语法正确的是()。
A)仅I
B)仅II
C)仅I和II
D)仅I、II和III
10、在SQL Server2008中,设有职工表(职工号,姓名,所在部门,工资),现要查询工资总和最高的前3个部门。下列查询语句中正确的是()。
A)
SELECT TOP3所在部门,COUNT(工资)FROM职工表GROUP BY所在部门
ORDER BY COUNT(工资)
B)
SELECT TOP3所在部门,COUNT(工资)FROM职工表
GROUP BY所在部门
ORDER BY COUNT(工资)DESC
C)
SELECT TOP3所在部门,SUM(工资)FROM职工表
GROUP BY所在部门
ORDER BY SUM(工资)
D)
SELECT TOP3所在部门,SUM(工资)FROM职工表
GROUP BY所在部门
ORDER BY SUM(工资)DESC
11、下列关于SQL Server2008触发器的说法,错误的是()。
A)触发器可以实现复杂的完整性约束
B)在一个表上可以为同一个操作建立多个前触发型触发器
C)对DML型触发器,引发触发器执行的操作只能是INSERT、DELETE和UPDATE
D)使用触发器实现数据完整性的效率通常低于CHECK约束
12、在SQL Server2008中,设有职工表(职工号,姓名,所在部门,工资),现要建立查询指定部门平均工资的标量函数。下列语句中正确的是()。
A)
CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
RETURN(SELECT AVG(工资)FROM职工表WHERE所在部门=@dept)
END
B)
CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
DECLARE@x INT
SET@x=SELECT AVG(工资)FROM职工表WHERE所在部门=@dept
RETURN(@x)
ENDC)
CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
RETURN(SELECT AVG(工资)FROM职工表WHERE所在部门=@dept GROUP BY所在部门)[k1]
END
D)
CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
DECLARE@x INT
SET@x=SELECT AVG(工资)FROM职工表WHERE所在部门=@dept GROUP BY所在部门
RETURN(@x)
END
13、下列关于SQL Server2008数据库文件组的说法,错误的是()。
A)一个数据库可以包含多个文件组
B)一个文件组可以包含多个数据文件
C)次要数据文件不能存放在主文件组中
D)一个数据文件不能是多个文件组的成员
14、下列关于SQL Server2008中分离和附加数据库的说法,错误的是()。
A)不能分离用户正在使用的数据库
B)分离数据库会将数据文件和日志文件一起分离
C)附加的数据库名可以与分离的数据库名不同
D)进行分离数据库操作时必须停止SQL Server服务
15、下列关于分区表的说法,错误的是()。
A)分区表机制将一个表的数据依据一定的条件水平划分为多个数据子集
B)表中数据量的大小是决定是否建立分区表的唯一考虑因素
C)合理使用分区表技术可以提高数据库的整体性能
D)分区表机制是从物理上将一个表划分为若干个分区16、下列关于SQL Server2008安全管理的说法,错误的是()。
A)SQL Server2008支持两种身份验证模式:"Windows身份验证模式"和"混合身份验证模式
B)在"混合身份验证模式"下,允许Windows用户和非Windows用户登录到SQL Server
C)所有的Windows用户默认都具有登录到SQL Server的权限
D)只有在"混合身份验证模式"下,sa才能登录到SQL Server
17、在SQL Server2008某数据库中,设用户U1是db_datawriter角色中的成员。下列关于U1在该数据库中具有的权限的说法,正确的是()。
A)对用户表数据仅具有INSERT、DELETE、UPDATE和SELECT权限
B)对用户表数据仅具有INSERT、DELETE和UPDATE权限
C)对用户表数据仅具有INSERT和DELETE权限
D)对用户表数据仅具有INSERT、DELETE、UPDATE权限,在该数据库中还具有CREATE TABLE权限
18、数据库系统运行维护工作的主要目的是保证数据库系统正常和高效地运行。下列工作中不属于数据库运行维护工作的是()。
A)数据库备份
B)系统上线时进行数据装载
C)调整数据库用户权限
D)新建索引以提高查询速度
19、在对数据库进行优化的过程中,可能需要对数据库进行重组和重构工作。有关重组和重构工作,下列说法错误的是()。
A)重组工作一般不改变数据库逻辑结构
B)重构工作一般会改变数据库逻辑结构
C)重构工作一般要修改数据库的模式,但一般不修改数据库的内模式
D)重组工作一般不会改变数据库物理结构
20、数据库的监控分析是指数据库管理员借助工具检测数据库系统的运行情况并进行分析的工作。设有如下内容:
Ⅰ.数据库空间使用率
Ⅱ.数据库各表的空间使用情况
Ⅲ.数据库数据缓冲区命中率
Ⅳ.回滚段使用情况
Ⅴ.用户登录次数及执行的语句
以上属于数据库监控内容的是()。
A)仅Ⅰ、Ⅳ和Ⅴ
B)仅Ⅰ、Ⅱ和Ⅲ
C)仅Ⅰ、Ⅱ、Ⅲ和Ⅳ
D)仅Ⅲ、Ⅳ
21、索引是数据库中重要的数据结构。关于索引现有下列说法:
Ⅰ.建立索引的目的是提高查询的效率
Ⅱ.在插入、删除和更新操作中,索引可能会增加系统开销
Ⅲ.当数据库表更新大量数据后一般需要重建对应的B树索引
Ⅳ.多属性索引中,索引属性的顺序一般按照属性的长度进行排列
以上说法正确的是()。
A)仅Ⅰ和Ⅲ
B)仅Ⅰ和Ⅳ
C)仅Ⅱ、Ⅲ和Ⅳ
D)仅Ⅰ、Ⅱ和Ⅲ
22、数据库运行环境和参数的调整是数据库优化的重要工作。下列说法错误的是()。
A)一般来说在数据库中发现性能问题时首先应对数据库运行环境进行检查
B)如果数据库服务器中运行队列数量超过CPU处理器数量,说明CPU已经饱和
C)如果业务高峰期数据库服务器的CPU使用率达到90%,说明CPU已经严重不足
D)当大量SQL语句或其返回结果在网络上传输时,提高网络性能有可能会提高整体系统性能
23、如何从故障中恢复数据库,保证数据库中数据的安全性和正确性是数据库管理系统需要解决的非常重要的问题。下列有关数据库故障及解决方法的说法,错误的是()。
A)预期的事务内部故障可以通过将事务回滚,撤销其对数据库的修改,使数据库达到一致性状态
B)对于非预期的事务内部故障需要利用日志文件撤销其修改,一般需要管理员人工干预恢复过程C)数据库系统发生软故障后需要进行UNDO和REDO两项工作
D)介质故障的容错方式可以采用软件容错也可以采用硬件容错
24、设某数据库管理员设计了如下图所示的数据库服务器容错架构,此架构一般被称为()。
A)数据库镜像
B)Active-Standby模式
C)RAID
D)双机互备援模式
25、现有一个基于SQL Server2008的数据仓库系统,其数据均来源于生产系统,生产系统每天将新数据导入仓库系统,导入后的数据只读。下列有关该数据仓库应设置的恢复模式,最恰当的是()。
A)完整恢复模式
B)大容量日志恢复模式
C)简单恢复模式
D)关键日志恢复模式
26、关于并行数据库,下列说法正确的是()。
A)层次结构可以分为两层,顶层是无共享结构,底层是共享内存或共享磁盘结构
B)共享磁盘结构主要通过负载均衡来降低资源竞争,因此具有很高的可扩展性,适合OLTP 应用
C)共享内存结构有利于减少内存冲突,从而比共享磁盘结构有更大的优势
D)并行数据库系统的主要目的是实现场地自治和数据全局透明共享
27、关于分布式数据库,下列说法正确的是()。
A)数据分片中的水平分片是将关系的属性依据一定条件划分为不同的分片,关系中的每个属性至少属于一个分片
B)数据分片中的垂直分片是将关系的属性依据一定条件分为不同的分片,关系的主码应至少属于某一个分片
C)在分布式数据库系统中,虽然数据分布在多个不同的场地上,但在进行查询处理时不需要考虑站点间传输数据的通信代价
D)分片透明性是最高级别的透明性,位于全局概念模式与分片模式之间
28、设在并行数据库系统中有表T(a1,a2,…,an),因数据量大,采用范围划分法根据划分属性a1将表T的元组划分成若干部分,以提高系统效率。现有如下查询需求:
Ⅰ.查询a1值为最大的元组
Ⅱ.查询a1=5的所有元组
Ⅲ.查询a1值属于[1,100]的元组
在以上列出的查询中,该划分方法会提高其查询效率的是()。
A)仅Ⅰ
B)仅Ⅱ
C)仅Ⅰ和Ⅱ
D)仅Ⅰ、Ⅱ和Ⅲ
29、现在许多中大型企业建有企业数据仓库。关于数据仓库中数据的特点,下列说法一般情况下正确的是()。
A)数据仓库中的数据主要服务于企业的基础业务需求,其设计应重点针对单点查询进行优化
B)数据仓库中的数据一般源自企业的OLTP环境,因此,其中的数据与OLTP环境中的数据一样,允许对数据做直接更改
C)数据仓库中的数据集合具有集成性,实现企业数据的集成有助实现企业范围的跨部门视图
D)数据仓库中的数据具有时变性,是指数据仓库一般对数据操作与访问的实时性要求很高30、设某企业的在线事务处理(OLTP)系统中有销售记录表T1,它每天约产生50万条新记录,OLTP系统保存半年数据。在企业的数据仓库中,用表T2保存近2年的销售细节数据,用表T3保存5年内每日各个商品销售汇总数据。为了实现从OLTP系统到数据仓库的销售数据的集成,一般情况下,下列方案最为合理的是()。
A)每天将表T1的数据全部复制到表T2中,并根据表T2的内容重新计算表T3
B)每天将表T1的数据全部复制到数据仓库中,根据复制的数据与表T2的区别,生成变化数据,并根据变化数据重新计算表T
C)在OLTP系统中采用技术手段记录表T1的所有新记录NT,每天将NT复制到数据仓库中,将NT1合并到表T2中,根据表T2重新计算表T
D)在OLTP系统中采用技术手段记录表T1的所有新记录NT,每天将NT复制到数据仓库中,将NT合并到表T2中,根据NT和表T3重新计算表T
二、应用题(共30分;每空2分)
31、对SQL语句进行性能调优属于数据库应用系统【31】阶段的任务。
32、三层浏览器/服务器结构的数据库应用系统是由浏览器、应用服务器和【32】服务器三部分组成的。
33、用例之间的关系包括扩展、使用和【33】三种。
34、设有课程表(课程号,课程名,开课学期)和选课表(学号,课程号,成绩),现要利用开窗函数查询每门课程的课程名、开课学期及选该门课的学生人数(不包括没人选的课程)。请补全下列语句:
SELECT DISTINCT课程名,开课学期,COUNT(*)OVER(【34】BY T1.课程号)AS选课人数FROM课程表T1JOIN选课表T2ON T1.课程号=T2.课程号
35、在T-SQL中,能够实现分情况显示不同类型数据的函数是【35】。
36、在T-SQL中,提取游标cur1第5行数据的语句是
【36】ABSOLUTE5FROM cur1…
37、在T-SQL中,修改触发器tri1的语句是【37】tri1…
38、在SQL Server2008中,通过在视图上创建唯一【38】索引的方式可使视图的结果集保存到数据库中。
39、在SQL Server2008中,具有系统管理员权限的服务器角色是【39】。
40、增加派生性冗余列的调优方法是典型的以【40】换时间的调优方法。
41、SQL Server2008数据库中,【41】视图是存储一个查询结果的数据库对象。
42、事务内部故障可以分为预期的和非预期的,运算溢出故障属于【42】的事务内部故障。
43、在分布式数据库中,【43】分片从列的角度将关系分为不同的片断。
44、在并行数据库中,【44】结构被认为是支持并行数据库系统的最好并行结构,适用于银行出纳之类的应用。
45、数据挖掘作为知识发现的过程,一般由三个主要阶段组成:数据准备、【45】、结果的解释和评估。
三、设计与应用题(共30分;每题10分)
46、在某数据库中,相关表的建表语句如下:
create tableT1(a1int primary key,
a2int,
a3int foreign key references T2(a3));
create tableT2(
a3int primary key,
a4int,
a5int foreign key references T2(a3));
create tableT3(
a1int,
a3int,
a6int,
primary key(a1,a3),
a1foreign key references T1(a1),
a3foreign key references T2(a3));
请画出相应的E-R图,使得可以从该E-R图推导出上述表定义,其中实体和联系的名称可以自定,实体的主码属性请使用下划线标明。(10分)
47、设在SQL Server2008某数据库中有商品表和销售表,两个表的定义如下:
CREATE TABLE商品表(
商品号char(10)PRIMARY KEY,
商品名varchar(40),
类别varchar(20),
进货单价int);
CREATE TABLE销售表(
商品号char(10)REFERENCES商品表(商品号),
销售时间datetime,
销售数量int,
销售单价int,
PRIMARY KEY(商品号,销售时间));
现要创建一个存储过程:查询指定类别的每种商品当前年累计销售总数量。请补全下列代码。(10分)
CREATE PROC p_TotalSales
@lb varchar(20)
AS
SELECT商品名,
(
SELECT【1】
FROM销售表t1
WHERE【2】and
year(销售时间)=year(【3】)
)AS当年销售总数量
FROM商品表t2WHERE【4】
48、设某超市经营管理系统使用SQL Server2008数据库管理系统。为了保证数据库可靠运行,数据库管理员设置了每天夜间对数据库一次全备份,备份数据保留2个月的备份策略。上线运行1年后,SQL Server数据库中数据已经达到近200GB。每天夜间要运行3个小时才能将数据库进行一次全备份,影响了夜间统计等业务正常运行。同时,备份空间也非常紧张。请解释出现此现象的原因,并提出优化的方法。(10分)答案
一、单项选择题
1、D;物理设计阶段的主要活动有:确定存储结构、存取路径的选择和调整、确定数据存放位置和确定存储分配。数据库备份与恢复设计属于数据库日常维护活动。
2、ER图向关系模式转换涉及到两方面:①实体的转换;②实体间联系的转换。
实体的转换:在从ER图转换为关系模式时,一个实体就转换成一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。
实体间联系的转换:实体间存在三种联系,即1:1(一对一),1:m(一对多),m:n(多对多)。在从ER向关系模式转换规则如下:
1:1(一对一)联系
方法一:联系转换为的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个或二个主码构成。
方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
1:m(一对多)联系
方法一:联系转换为的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由m端实体的键组成。
方法二:与m端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
m:n(多对多)联系
多对多联系转换成新的的模式,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。
由题目可知,该题中有三个实体,二个1:m(一对多)联系,二个m:n(多对多)联系。三个实体和二个m:n(多对多)联系可以转换为单独的模式,二对1:m(一对多)联系需要合并到实体中去。因此可以最终得到5个模式,故选择B选项。
3、D;DFD的主要组成包括外部实体(外部项)、处理过程、数据存储和数据流。外部实体指系统之外又和系统有联系的人或者事物,说明了数据的外部来源和去处。处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。数据流是指处理功能的输入输出数据存储表示数据保存的地方,它用来存储数据。
4、C;①表示层:用于显示数据和接收用户输入的数据。(一般为Windows应用程序或Web 应用程序)。
②业务逻辑层:是表示层和数据访问层之间的桥梁,主要负责数据的传递和处理。
③数据访问层:实现对数据的保存和读取操作。可以访问关系数据库、文本文件或XML文档等。
④数据持久层:以程序为媒介把表现层或服务层的数据持久,它是位于物理层和数据访问层之间。
5、D;Ⅰ:因为很少用到商品描述属性,系统在查询时也就很少查询。因此可以将其分割,这样虽然破坏了表的整体性,却可以将系统得到优化。
Ⅱ:增加冗余列是指在多个表中增加具有相同语义的列,它常用来在查询时避免连接操作,值得一提的是,主码和外码在多表中重复出现不属于冗余列,这里指得冗余列是非关键字字段在多表的中的出现。
由于表的连接操作是比较费时的,如果在表中增加冗余列,则在行上执行查询操作时不需要进行表的连接操作,从而提高了查询效率。
Ⅲ:一个聚集是一组表,可将经常一起使用的具有同一公共列值的多个表中的数据行存储在一起。对于经常频繁一起查询的表,使用聚集比较方便。
Ⅳ:通常在运行Order By和Group By语句时会涉及到排序的操作,尤其是对大型的表进行重复的排序,会引起磁盘很大的开销。而散列文件的优点是:文件随机存放,记录不需进行排序;插入、删除方便;存取速度快;不需要索引区,节省存储空间。因此带有Order By和Group By的表可以使用散列文件存储,提高查询效率。
6、B;使用索引的原则:
在需要经常搜索的列上创建索引。
主键上创建索引。
经常用于连接的列上创建索引。
经常需要根据范围进行搜索的列上创建索引。
经常需要排序的列上创建索引。
经常用于where子句的列上创建索引。
根据索引建立规则A和B都符合建立索引的条件。但是一般where语句在执行时要执行全表检索寻找符合条件的内容,这本身就是很消耗时间的过程,尤其对于大型的表格更加消耗时间。本题查询过程中会首先执行"姓名LIKE'张%'",如果条件为真则执行"年龄!=15"语句。由此可见本题查询时间主要消耗在where语句上,因此在where语句上建立索引可以提高查询的效率。
7、关键字CLUSTERED表明该索引属于聚集索引,可以排除C、D。由于建立在主码上的索引才是主索引,所以A错。故选择B选项。
8、数据库实施阶段包括:建立数据库结构、数据加载、事务和应用程序的编码及测试、系统集成、测试与试运行、系统部署。Ⅳ、Ⅴ属于数据库运行管理与维护阶段内容。故选A选项。
9、活动图主要的目的在于陈述活动与活动之间的流程控制的转移。在活动图中,必须有且只有能一个起始点,用●表示,可以有多个结束点,用
表示。活动之间的转换用箭头表示,箭头表示执行的方向,其标注为执行下一个活动的条
件,如果箭头上没有条件,则执行完该活动后自动执行所指向的活动。加粗指向为同步调,表示可以并行执行,菱形代表分支,表示判断。
状态图的主要目的在于陈述系统中有关事件的状态转移。他的画法和活动图类似,但是状态图在状态发生转移时需要在转移的关系上标示该事件。
由题目可知,前三项都符合要求,第四项没有在箭头上标明转移标示。故选择D选项。10、本题考查的是COUNT()函数和SUM()函数的使用。
COUNT()函数是用于统计元组个数或者一列中值的个数,而SUM()用来计算一列值的总和。故选择D选项。
11、一张表上可以建立多个后触发器,但只能建立一个前触发器。故选择B选项。
12、GROUP BY子句的作用是将查询的结果按照指定的值进行分组,而题目要求查询指定部门的最高工资的,因此并不需要分组语句,可以排除C、D。SET语句主要作用是给变量赋值。一个变量只有一个值。而一个部门可能存在一个或多个人工资一样多且是最高的,所以选项B不正确。故选择A选项。
13、主文件组是系统定义好的一个文件组,它包含主要数据文件和任何没有明确分配给其它文件组的其它数据文件。如果次要数据文件没有分配给其它文件组,也是可以放在主文件组中的。故选择C选项。
14、分离数据库时需要停用被分离的数据库,但是不需要停用SQL Server服务。故选择D选项。
15、是否创建分区表主要取决于表当前的数据量大小以及将来的数据量大小,同时还取决于对表中的数据如何进行进行操作。故选择B选项。
16、Windows用户只有系统管理员组成员才有权限登录到SQL Server。故选择C选项。
17、SQL Server固定数据库角色及其权限如下:
db_owner:具有在数据库中进行全部操作的权限,包括配置、维护数据库及删除数据库。db_accessadmin:可以添加或删除数据库用户的权限。
db_securityadmin:具有管理数据库角色、角色成员以及数据库中的语句和对象的权限。
db_ddladmin:具有执行数据定义语言(DDL)的权限。
db_backupoperator:具有备份数据库、备份日志的权限。
db_datareader:具有查询数据库中所有用户数据的权限。
db_datawriter:具有插入、删除和更新数据库中所有用户数据的权限。
db_denydatareader:不允许具有查询数据库中所有用户数据的权限,等同于对所有的表和视图授予了DENY SELECT权限。
db_denydatawriter:不允许具有INSERT、DELETE和UPDATE数据库中所有用户数据的权限。故选择B选项。
18、数据库运行时维护包括:日常维护,监控与分析,性能优化与调整,系统进化。选项B 属于数据库实现与部署阶段内容。故选择B选项。
19、数据库的重组并不修改原设计的逻辑和物理结构,而数据库的重构则要部分的修改数据库的模式和内模式。故选择C选项。
20、根据监控对象的不同,数据库的监控分析可以分为对数据库架构体系的监控(主要内容:空间基本信息、空间使用率与剩余空间大小(Ⅰ,Ⅱ),空间是否具有自动扩展的能力、哪些表的扩展将引起空间的扩展,以及段的占用空间与区间数等。)和对数据库性能的监控(主要包括:数据缓冲区的命中率(Ⅲ)、库缓冲、用户锁、锁与等待、回滚段(Ⅳ)、临时段使用情况、索引的使用情况、等待事件和共享池等)。综上所述,故选择C选项。
21、在多属性索引中,索引属性的顺序是按照其区分度进行排序,由此可知Ⅳ描述的内容是错误的,故可排除C、B选项。在插入、删除和更新操作中,索引可能会增加系统开销,Ⅱ正确,可以排除A选项,因此选择D选项。
22、如果业务空闲时数据库服务器的CPU使用率达到90%,说明服务器的CPU资源已经严重不足,如果工作高峰时CPU使用率仍然很低,则说明服务器CPU资源充足。故选择C选项。
23、事务故障包括预期内的事务故障和非预期的事务故障,两种事务故障的恢复都是由系统自动完成的,对用户是透明的。故选择B选项。
24、主-备方式(Active-Standby方式)即指的是一台服务器处于某种业务的激活状态(即Active 状态),运行数据库系统,数据库数据存储在存储设备中,另一台服务器处于该业务的备用状态(即Standby状态)。两台服务器之间使用专用网络进行检查,当运行服务器出现错误时,由备份服务器接管数据库。选项B符合图的特点。故选择B选项。
25、SQL Server2008支持三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。
其中,简单恢复模式只用于测试和开发数据库,或用于主要包含只读数据的数据库(如数据仓库)。因此选择C选项。
26、①共享内存的优势是实现简单,缺点是由于共享内存,如果处理器数量过多,容易造成访问内存冲突。②共享磁盘结构所有的处理机拥有的主存储器,通过互联网共享磁盘。这种结构可以克服共享内存结构,但是由于是通过互联网实现处理器之间的信息交换,会产出一定的通信代价。③无共享结构每个处理机拥有的主存储器和磁盘,不共享任何资源。它被认为是支持并行数据库系统的最好并行结构,比较适用于银行、出纳、民航售票等OLTP 类应用。④分布式数据库系统的主要目的是实现场地自治和数据全局透明共享。综上所述,可知A选项正确。
27、①水平分片是在关系中从行的角度(元组)依据一定条件分为不同的片段,关系中的每一行必须至少属于一个片段,以便在需要是可以重构关系。②垂直分片是在关系总从列的角度(属性)依据一定条件分为不同的片段,各片段中应该包含关系的主码属性,以便通过连接方法恢复关系。③在分布式数据库系统中,由于数据分布在多个不同的场地上,使得查询处理中还要考虑站点间传输数据的通信代价。综上所述,可知D选项正确。
28、范围划分法按照关系中某个属性的取值范围将数据文件划分为n部分,分别放在磁盘上,该方法适合于范围查询以及点查询。题目中给出了三个查询,其中Ⅰ、Ⅲ属于范围查询,Ⅱ属于点查询。因此选择D选项。
29、在传统的OLTP(On-Line Transaction Processing,联机事务处理系统)中,数据库系统的数据一般是以面向企业基本业务需要的方式进行组织的,而数据仓库中的数据是以面向主题的方式进行组织的。故A选项错误。
数据仓库中的数据是一个集成的,易于访问的,一致的,包含大量历史数据的和经过优化处理的数据。因此数据仓库具有面向主题性、集成性、不可更新性和时间特性。这里面的不可更新并不意味着不再向数据仓库中追加新的数据,只是表示一般不在对进入数据仓库中的原始数据进行修改。选项B错。
数据仓库的时变性是指数据仓库中的每个数据单元都有时间标志,记录一般都加有时间戳,有时记录可能包含有事务的发生时间。同时,数据仓库随时间变化的特性还指数据仓库在运行中必须不断捕捉操作性环境中的数据,并将新的数据集成后追加到其中。并不是指对数据操作与访问的实时性要求很高。故D选项错误。因此选择C选项。
30、数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织的新技术。它的建立能充分利用已有的数据资源,把数据转换为信息,从中挖掘出知识,最终创造出效益。数据仓库有若干基本特征,包括不可更新性和随时间变化性。所谓不可更新性就是用户在提取仓库中的数据进行分析时并不会同时对数据仓库中的数据进行更新操作,而数据变化性是数据仓库每隔一段时间进行数据的更新和处理。综上可以看出,数据仓库的更新与时间间隔有关,所以不会实时更新,即排除A、C选项,又因为对用户进行推荐时要结合以往的历史数据而不是仅通过当前数据分析,即B错。综上可知,选项D正确。
二、应用题
31、【答案】运行管理与维护
【解析】运行管理与维护阶段包括日常维护、监控与分析、性能优化调整、系统进化。
32、【答案】数据库
【解析】三层浏览器/服务器结构的数据库应用系统是由浏览器、应用服务器和数据库服务器三部分组成。
33、【答案】组合
【解析】用例之间的关系包括扩展、使用和组合三种。
34、【答案】PARTITION
【解析】开窗函数公式:函数名(列)OVER(选项)。OVER关键字表示把函数当成开窗函数而不是聚合函数。在SQL SERVER2005/2008支持两种:排名开窗函数和聚集开窗函数。聚合开窗函数只能使用PARTITION BY子句或都不带任何语句,ORDER BY不能与聚合开窗函数一同使用。很多聚合函数都可以用作窗口函数的运算,如SUM、AVG、MAX、MIN、COUNT。
35、【答案】CASE
【解析】在查询语句中使用CASE函数,可以达到分情况显示不同类型的数据的目的。
36、【答案】FETCH
【解析】FETCH功能是通过Transact-SQL服务器游标检索特定行,具体语法:
FETCH[[NEXT|PRIOR|FIRST|LAST|ABSOLUTE{n|@nvar}|RELATIVE{n|@nvar}] FROM]{{[GLOBAL]cursor_name}|@cursor_variable_name}[INTO@variable_name[,...n]]
参数说明:
NEXT:紧跟当前行返回结果行,并且当前行递增为返回行。如果FETCH NEXT为对游标的第一次提取操作,则返回结果集中的第一行。NEXT为默认的游标提取选项。
PRIOR:搜索返回紧邻当前行前面的结果行,并且当前行递减为返回行。如
果FETCH PRIOR:为对游标的第一次提取操作,则没有行返回并且游标置于第一行之前。FIRST:返回游标中的第一行并将其作为当前行
LAST:返回游标中的最后一行并将其作为当前行搜索。
ABSOLUTE{n|@nvar}:如果n或@nvar为正,则返回从游标头开始向后的第n行,并将返回行变成新的当前行。如果n或@nvar为负,则返回从游标末尾开始向前的第n行,并将返回行变成新的当前行。如果n或@nvar为0,则不返回行。n必须是整数常量,并且@nvar的数据类型必须为smallint、tinyint或int。
RELATIVE{n|@nvar}:如果n或@nvar为正,则返回从当前行开始向后的第n行,并将返回行变成新的当前行。如果n或@nvar为负,则返回从当前行开始向前的第n行,并将返回行变成新的当前行。如果n或@nvar为0,则返回当前行。在对游标进行第一次提取时,如果在将n或@nvar设置为负数或0的情况下指定FETCH RELATIVE,则不返回行。n必须是整数常量,@nvar的数据类型必须为smallint、tinyint或int。
37、【答案】ALTER TRIGGER
【解析】创建触发器用CREATE语句,修改触发器用ALTER语句,删除触发器用DROP语句。
38、【答案】聚集
【解析】视图称为虚拟表,标准视图的结果集并不永久地存储在数据库中。每次通过标准视图查询数据时,数据库管理系统都会在内部将视图的定义替换为对基本表的查询语句,然后再对基本表执行查询。这样每次引用视图的查询,系统会产生很大开销。解决的方法就是对视图创建唯一聚集索引来提高查询的性能。对视图创建唯一聚集索引后,视图的结果集将存储在数据库中。建有唯一聚集索引的视图称为索引视图,也称为物化视图。
39、【答案】sysadmin
【解析】SQL Server2008支持的固定服务器角色有:
40、【答案】空间
【解析】派生性冗余列是指表中增加的列有表中的一些数据项经过计算而成,它的作用是在查询时减少连接操作,避免使用聚合函数,提高查询统计的处理速度。由于增加了列,会增加存储空间,也减少了查询时间,因此说是以空间换时间的调优方法。
41、【答案】索引
【解析】对视图创建唯一聚集索引后,视图的结果集将存储在数据库中。建有唯一聚集索引的视图称为索引视图,也称为物化视图。
42、【答案】非预期
【解析】非预期的事务内故障包括:运算溢出故障、并发事务死锁故障、违反了某些完整性而导致的故障。
43、【答案】垂直
【解析】水平分片是在关系中从行的角度(元组)依据一定条件分为不同的片段,关系中的每一行必须至少属于一个片段,以便在需要是可以重构关系。
垂直分片是在关系总从列的角度(属性)依据一定条件分为不同的片段,各片段中应该包含关系的主码属性,以便通过连接方法恢复关系。
44、【答案】无共享
【解析】无共享结构每个处理机拥有的主存储器和磁盘,不共享任何资源。它被认为是支持并行数据库系统的最好并行结构,比较适用于银行,出纳,民航售票等OLTP类应用。
45、【答案】数据挖掘
【解析】数据挖掘作为知识发现的过程,一般由三个主要阶段组成:数据准备、数据挖掘、结果的解释和评估。
三、设计与应用题
46、【参】
【解题思路】
ER图向关系模式转换涉及到两方面:实体的转换和实体间联系的转换。
实体的转换:在从ER图转换为关系模式时,一个实体就转换成一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。实体间联系的转换规则如下:
1:1(一对一)联系。
方法一:联系转换为的关系模式;模式的属性由联系本身的属性及两个实体的码构成;主键由两个实体中的任意一个或二个主码构成。
方法二:联系与一端的实体的关系模式合并,将另一实体的码和联系的属性加入到实体的关系模式内,码不变。
1:m(一对多)联系。
方法一:联系转换为的关系模式;模式的属性由联系本身的属性及两个实体的码构成;模式的码由m端实体的主码组成。
方法二:与m端的实体的关系模式合并,即将1端关系的码和联系的属性加入到m端的实体的关系模式内,码不变。
m:n(多对多)联系
只有一个方法:联系转换成的关系模式,模式的属性由联系本身的属性及两个实体的码构成,关系模式的码由两端实体的主码组合而成。
该题是是从关系模式来推断E_R图,因此解题的思路是对E_R向关系模式转换做反向转换。根据规则C可以推断T3是个多对多关系,a1和a3是实体的主码,a6是联系的属性。根据规则B可以推断出T1、T2是1:m关系。因为a3和a5是外码。且a3和a5的值相同。a2、a4是联系T1、T2的属性,a2也可以是实体1的属性。
47、【参】
【1】SUM(销售数量)
【2】t1.商品号=t2.商品号
【3】t1.销售时间
【4】t2.类别=@lb
【解题思路】
(1)整个select语句的含义是:根据where子句的条件表达式,从From子句指定的基本表或视图中找出满足条件的元组,再按select子句中的目标列表达式,选出元组中的属性值形成结果表。
(2)该题中(SELECT【】FROM销售表t1WHERE【】and year(销售时间)=year(【】))是个嵌套的子查询,别名叫做当年销售总数量。
(3)语句执行过程:
①先从商品表中按照第二个where形成一个初步查询结果。由于只有商品表中有类别,因此可知【4】填写:t2.类别=@lb(t2是商品表的别名,t1是销售表的别名)。由此可知该步是按给定类别查询。
②销售总数量语句就应该在第一步的基础上求某年的总量。因此可以推断【3】是获得销售时间语句。因此该空填写t1.销售时间。由于是在第一步基础上的查询,所以应该实行连表查询,【2】应该填写连接的条件,即t1.商品号=t2.商品号。
③【1】应该是求总量的语句,即SUM(销售数量)。
48、【参】
产生此现象的原因是系统采用了全备份策略,随着业务的开展,需要备份数据量逐渐增大,备份时间越来越长,占用了系统的资源,从而影响了其它业务。解决的方法是采用全备份+差异备份+日志备份组合策略备份数据库。全备份+差异备份+日志备份组合策略是指在全备份中加一些差异备份,比如每周日0:00进行一次全备份,然后每天0:00点进行一次差异备份,然后再两次差异备份之间增加一些日志备份。这样做备份和恢复的速度都比较快,而当系统出现故障时,丢失的数据也很少。
备份示意图如下:
如果系统在周二的差异备份之前出现故障,则应首先尝试备份活动日志(日志尾部),然后再按顺序恢复全备份1,差异备份1,日志备份3和日志备份4,然后再恢复备份的尾部日志。如果尾部日志备份成功,则数据库可以还原到故障点。
这种备份策略虽然备份频率高,但是备份时间短,占用的备份空间也小,而且不会产生数据丢失。
【解题思路】
全备份(Full Backup)就是对整个系统进行完全备份,包括系统和数据。这种备份方式的好处就是很直观,容易被人理解,当数据丢失时容易恢复。然而它也有不足之处:首先由于每天都对系统进行完全备份,因此在备份数据中有大量重复的,这些重复的数据占用大量的存储空间;其次,由于需要备份的数据量相当大,因此备份所需的时间比较长。
差异备份(Differential Backup)就是每次备份的数据是相对于上一次全备份之后增加和修改过的数据。它以前一次全备份为基准点,备份全备份之后变化的数据文件、日志文件以及数据库中其它被修改的内容。因此,差异备份通常比全备份占用的时间小且执行速度快,带回增加备份的复杂程度。
日志备份(Log Bakup):日志备份并不备份数据库本身,它只是备份日志记录,从而只备份上次备份之后到当前备份时间发生变化的日志内容。一般情况下,日志备份比完整备份和差异备份使用的资源少,因此可以更频繁的使用日志备份,以减少数据丢失的风险。
全备份+差异备份+日志备份组合策略组合了三种备份方式的优点,可以缩短备份时间、节约备份空间,提高备份的效率。
