当前位置:   article > 正文

计算机等级考试数据库三级模拟题8_检查点能减少数据库完全恢复时所必须执行的日志,提高数据库恢复速度。下列有关检

检查点能减少数据库完全恢复时所必须执行的日志,提高数据库恢复速度。下列有关检

1数据完整性保护是指保护数据的正确性和一致性。有下列关键字:
Ⅰ.GRANT
Ⅱ.CHECK
Ⅲ.UNIQUE
Ⅳ.NOT NULL
上述关键字中和完整性定义相关的是()。
仅Ⅰ和Ⅱ

仅Ⅰ、Ⅱ和Ⅲ

仅Ⅰ、Ⅱ和Ⅳ

仅Ⅱ、Ⅲ和Ⅳ

正确答案:D
答疑:数据库完整性包括实体完整性、参照完整性和用户自定义完整性。
①实体完整性在CREATE TABLE中用PRIMARY KEY定义。
②参照完整性在CREATE TABLE中用FOREIGN KEY短语定义哪些列为外码,用REFERENCES短语指明这些外码参照哪些表的主码。
③用户自定义完整性在CREATE TABLE中定义属性的同时也可以根据应用要求,定义属性上的约束条件,即属性值限制,包括:列值非空(NOT NULL),列值唯一(UNIQUE),检查列值是否满足一个布尔表达式(CHECK短语)。
根据上述用户自定义完整性可知选项D符合题意。GRANT关键字是属于定义数据库安全性的语句,主要用于将某些对数据库的操作权限授予某个用户。


2在一个ER图中,包含三个实体集,分别是员工、部门和项目;员工内部存在一对多的领导联系,员工和部门之间存在一对一的管理联系,员工和部门之间存在多对一的属于联系,员工和项目之间存在多对多的参与联系,部门和项目之间存在一对多的负责联系,则将该ER图转化为关系模型后,得到的关系模式个数是()。
4个

5个

6个

7个

正确答案:A
答疑:ER图向关系模式转换涉及到两方面:实体的转换和实体间联系的转换。
①实体的转换:在从ER图转换为关系模式时,一个实体就转换成一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。
②实体间联系的转换:实体间存在三种联系,即1:1(一对一)联系,1:m(一对多)联系,m:n(多对多)联系。在从ER向关系模式转换规则如下:
1:1(一对一)联系
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个键构成。
方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
1:m(一对多)联系
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由n端实体的键组成。
方法二:与n端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
m:n(多对多)联系
多对多联系转换成新的独立的模式时,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。
由题目可知,该题中有三个实体、一个1:1(一对一)联系、三个1:m(一对多)联系和一个m:n(多对多)联系。三个实体和一个m:n(多对多)联系可以转换为单独的模式,1:1(一对一)联系和一对1:m(一对多)联系需要合并到实体中去。因此可以最终得到四个模式,即三个实体(员工,部门,项目)和一个多对多联系,故选择A选项。


3从功能角度数据库应用系统可以划分为四个层次,其中负责向表示层直接传送数据的是()。
表示层

业务逻辑层

数据访问层

数据持久层

正确答案:B
答疑:数据库应用系统从功能的角度可以划分为四层,分别是表示层、业务逻辑层、数据访问层和数据持久层。
①表示层:用于显示数据和接受用户输入的数据。(一般为Windows应用程序或Web应用程序) 。
②业务逻辑层:是表示层和数据访问层之间的桥梁,主要负责数据的传递和处理。 
③数据访问层:实现对数据的保存和读取操作。可以访问关系数据库、文本文件或XML文档等。
④数据持久层:以程序为媒介把表现层或服务层的数据持久化,它位于物理层和数据访问层之间。


4在需求分析阶段规定好不同用户所允许访问的视图,这属于数据库应用系统的()。
功能需求分析

性能需求分析

存储需求分析

安全需求分析

正确答案:A
答疑:需求分析主要包括数据需求分析、数据处理需求分析、功能需求分析(数据处理需求分析与业务规则需求分析)、性能需求分析和其它需求分析。
①数据处理需求分析:从对数据组织与存储的设计角度,辨识应用领域所管理的各类数据项和数据结构,与数据处理需求分析结果一起,组成数据字典,形成"数据规范说明书"。
②功能需求分析:功能需求分析主要针对DBAS应具有的功能进行分析,是DBAS需求分析的核心环节,总体上可分为数据处理需求分析与业务规则需求分析。数据处理需求分析从数据访问和处理的角度,明确对各数据项所需要进行的数据访问操作。在系统规划与分析阶段,DBAS开发者已经明确了各类用户视图。因此数据处理需求分析阶段可以从这些视图出发,针对每个用户视图进行数据处理需求分析,然后汇总各个视图的分析结果得到对系统的完整分析结果。故选择A项。
③性能需求分析:性能需求则描述了系统应当做到什么程度,分析DBAS应具有的性能指标。
④其他需求分析包括:存储需求、安全性需求等。
a.存储需求分析:存储需求分析是指估计DBAS系统需要的数据存储量,如DB所存储的数据总量。
b.安全需求分析:主要用于数据库安全设计,避免被非法使用和攻击。


5安全性保护是防止用户对数据库的非法使用。现有下列措施:
Ⅰ.用户身份鉴别
Ⅱ.权限控制
Ⅲ.视图机制
Ⅳ.双机热备
上述措施中和安全性保护相关的是()。
仅Ⅰ和Ⅱ

仅Ⅰ、Ⅱ和Ⅲ

仅Ⅰ、Ⅱ和Ⅳ

全部都是

正确答案:B
答疑:Ⅳ.双机热备是属于数据库恢复技术内容,当介质被破坏后能够保证数据的完整性。Ⅰ、Ⅱ、Ⅲ都是和安全性相关的一些措施,故选择B选项。


6已知有关系:学生(学号,姓名,性别,年龄),对该关系有如下查询操作:
SELECT 学号 FROM 学生
WHERE 性别 = '男' AND 年龄 != 25
ORDER BY 姓名
为了加快其查询速度,则应该()。
在学号上建索引

在姓名上建索引

在性别上建索引

在年龄上建索引

正确答案:B
答疑:使用索引的原则:
①在需要经常搜索的列上创建索引。
②主键上创建索引。
③经常用于连接的列上创建索引。
④经常需要根据范围进行搜索的列上创建索引。
⑤经常需要排序的列上创建索引。
⑥在where查询子句中引用效率高的列上创建索引。
⑦在Order By子句、Group By子句中出现的列上建立索引。
根据题意,经常查询的是学号,并且要对所查询的结果按照姓名排序。根据索引使用原则,可以考虑在学号或者姓名列建立索引,故排除C、D。又因为在某一个范围内频繁搜索的属性,只有在当使用索引的查询结果不超过记录总数的20%时,索引才会有明显效果,因此综合考虑,在姓名上建立索引更能加快查询速度,故选择B选项


7如果一个基本表的数据量很小,查询以整表扫描为主,并且会频繁执行更新操作,则存储该表的最佳文件结构是()。
散列文件

堆文件

顺序文件

聚集文件

正确答案:B
答疑:散列文件是指利用散列存储方式组织的文件,亦称为直接存取文件。散列文件的优点是:文件随机存放,记录不需进行排序;插入、删除方便;存取速度快;不需要索引区,节省存储空间。其缺点是:不能进行顺序存取,只能按关键字随机存取,且询问方式只限于简单询问,并且在经过多次插入、删除后,也可能造成文件结构不合理,需要重新组织文件。
如果数据库中的一个基本表的数据量很少,并且插入、删除、更新等操作非常频繁,该基本表可以采用堆文件组织形式。因为堆文件无需建立索引,维护代价非常低。虽然堆文件的数据访问效率较低,但在数据量很少时,定位文件记录的时间非常短。
顺序文件指的是文件信息存放在若干连续的物理块中。其优点是简单,支持顺序存取和随机存取,顺序存取速度相对较快。缺点是文件不能动态增长,不利于文件插入和删除。如果用户的查询条件定义在查找码上,则顺序文件是比较适合的文件结构。
聚集文件将不同关系表中有关联关系的记录存储在一起。如果某些重要而频繁的用户查询经常需要进行多表连接操作,可以考虑聚集文件,来改善查询效率。综上所述,故选择B选项。


8在数据库系统运行过程中,并发事务可能导致死锁。下面是一些实现事务的做法:
Ⅰ.按相同顺序访问资源
Ⅱ.减少事务中的用户交互
Ⅲ.合并多个小事务
Ⅳ.尽量使用表级锁
Ⅴ.使用绑定连接
在以上做法中,能有效减少数据库死锁发生数量的是()。
仅Ⅰ、Ⅱ和Ⅲ

仅Ⅰ、Ⅱ和Ⅴ

仅Ⅱ、Ⅲ和Ⅳ

仅Ⅲ、Ⅳ和Ⅴ

正确答案:B
答疑:事务是并发控制的基本单位,保证事务ACID特性是处理事务的重要任务,而事务ACID特性可能遭到破坏的原因之一就是多个事务对数据库的并发操作造成的。在数据库应用系统中,可以通过以下几个原则来预防死锁:
①各个事务应顺序访问共享资源,将复杂的、大的事务分解成多个简单、小的事务;②按同一顺序访问对象;③事务隔离性级别;④使用绑定连接;⑤灵活使用显示加锁技术等。由此可知Ⅲ中合并多个小事务不是有效减少死锁的做法,即可排除A、C、D选项。故选择B选项。


9在数据库应用系统建模过程中,经常采用UML作为建模工具。关于UML的动态建模机制,下列说法错误的是()。
类图是展现一组类、接口和协作以及它们之间的关系的一种静态视图

协作图是交互图的一种,其中包含一组对象、对象之间的联系以及对象间发送和接收的消息

状态图主要用来描述一个实体在发生一些事件时的状态变化情况,用于展示该实体处于不同状态时对不同事件做出响应后的状态变化情况

顺序图主要用于描述系统、用例和程序模块中逻辑流程的先后执行次序或并行次序

正确答案:D
答疑:顺序图是用来描述对象自身及对象间信息传递顺序的视图。活动图主要用于描述系统、用例和程序模块中逻辑流程的先后执行次序、并行次序。故选择D选项。


10在SQL Server 2008中,设有职工表(职工号,姓名,所在部门,工资),各列均不允许空值。现要查询人数最多的3个部门,有下列查询语句:
Ⅰ.
SELECT TOP 3 所在部门, COUNT(*) FROM 职工表 
GROUP BY 所在部门
ORDER BY COUNT(*) DESC
Ⅱ.
SELECT TOP 3 所在部门, COUNT(职工号) FROM职工表
GROUP BY 所在部门
ORDER BY COUNT(职工号) DESC
Ⅲ.
SELECT TOP 3 所在部门, COUNT(所在部门) FROM职工表
GROUP BY 所在部门
ORDER BY COUNT(所在部门) DESC 
Ⅳ.
SELECT TOP 3 所在部门, SUM(职工号) FROM职工表
GROUP BY 所在部门
ORDER BY SUM(职工号) DESC 
上述语句中,能够实现该查询要求的是()。
仅Ⅰ

仅Ⅳ

仅Ⅰ和Ⅱ

仅Ⅰ、Ⅱ和Ⅲ

正确答案:D
答疑:本题考查的是COUNT()函数和SUM()函数的使用。COUNT()函数用于统计元组的个数或者某个字段中值的个数,而SUM()则用来计算某个字段值的总和。故选择D选项。


11下列关于SQL Server 2008触发器的说法,错误的是 ()。


触发器可用于实现复杂的业务规则

使用触发器实现数据完整性的效率通常低于CHECK约束

在同一个表的同一个操作上可以建立多个后触发型触发器

当前触发型触发器执行时,引发触发器执行的操作语句已执行完毕

正确答案:D
答疑:前触发型触发器是在引发该触发器执行的操作语句执行之前激活的触发器,而后触发器就是在语句执行之后激活的触发器。根据触发器的特点可知D选项错误。故选择D选项。


12在SQL Server 2008中,设有职工表(职工号,姓名,所在部门,工资),现要建立查询指定部门的最高工资的标量函数。下列语句中正确的是()。

CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
RETURN(SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept)
END


CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
DECLARE @x INT
SET @x = SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept
RETURN (@x)
END


CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
RETURN(SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept
GROUP BY 所在部门)
END


CREATE FUNCTION dbo.f_AvgSalary(@dept varchar(20))
RETURNS INT AS
BEGIN
DECLARE @x INT
SET @x = SELECT MAX(工资) FROM 职工表 WHERE 所在部门 = @dept
GROUP BY 所在部门
RETURN (@x)
END

正确答案:A
答疑:GROUP BY子句的作用是将查询的结果按照指定的字段进行分组,而题目中要求建立查询,查找指定部门中员工的最高工资,可以仅使用条件查询完成该功能,并且不需要对"所在部门"字段进行分组操作,故可以排除C、D选项。SET语句主要作用是给变量赋值,且一个变量只有一个值。而一个部门可能存在一个或多个人工资一样多且是最高的,那么B选项不符合要求。故选择A选项。


13下列关于SQL Server 2008数据库文件的说法,错误的是 ()。
一个数据库可以包含多个主要数据文件

一个数据文件不能属于多个文件组

日志文件不能包含在文件组中

一个数据库可以包含多个日志文件

正确答案:A
答疑:每个数据库有且仅有一个主要数据文件,可以有多个次要数据文件。每个数据库必须至少有一个日志文件,也可以有多个日志文件。日志文件不包括在文件组内。一个文件不可以是多个文件组的成员。总上所述,可知A选项错误。故选择A选项。


14下列关于SQL Server 2008中分离和附加数据库的说法,错误的是()。
在分离数据库之前,必须先断开所有用户与该数据库的连接

分离数据库只分离数据文件,不会分离日志文件

附加数据库时文件存储位置可以与分离数据库时文件所处的存储位置不同

进行分离数据库操作时不能停止SQL Server服务

正确答案:B
答疑:分离数据库时不仅分离数据文件,还要一起分离日志文件。日志文件是附加数据库的重要组成部分。故选择B选项。


15下列关于SQL Server 2008分区表的说法,错误的是()。
分区表是从物理上将一个表划分为若干个分区

分区后的各分区必须存储在不同的文件组中

表中数据量的大小并不是是否需要进行分区的唯一考虑因素

对表进行分区后,用户在访问数据时不需要知道被访问数据所在的分区

正确答案:B
答疑:分区表的本质是把符合不同标准的数据子集存储在某个数据库的一个或多个文件组中,通过元数据来表述数据存储的逻辑地址。故选择B选项。


16下列关于数据库存取控制的说法,错误的是()。
自主存取控制主要通过GRANT、REVOKE、DENY语句来实现

在强制存取控制中,DBMS将实体划分为主体和客体两大类

仅当主体的许可级别大于客体的密级时,主体才能读取相应的客体

强制存取控制本质上是分层次的,它比自主存取控制更严格

正确答案:C
答疑:数据库强制存取控制方法的规则是:
①仅当主体的许可证级别大于或等于客体的密级时,主体才能读取相应的客体;②仅当主体的许可证级别等于客体的密级时,主体才能写相应的客体。故选择C选项。


17在SQL Server 2008某数据库中,设用户U1是db_ddladmin角色中的成员。下列关于U1在该数据库中具有的权限的说法,正确的是()。
对所有用户表仅具有增、删、改、查数据的权限

对所有用户表仅具有增、删、改、查数据及创建表的权限

具有执行全部数据定义语句的权限

仅具有创建数据库的权限

正确答案:C
答疑:db_ddladmin是系统管理员角色,具有执行全部数据定义语言的权限,如:CREATE、DROP、ALTER语句。故选择C选项。


18完成数据库应用系统的设计并进行实施后,数据库系统进入运行维护阶段。下列工作中不属于数据库运行维护工作的是()。
恢复数据库数据以核查问题

为了保证安全,定期修改数据库用户的密码

更换数据库服务器以提高应用系统运行速度

使用开发人员提供的SQL语句初始化数据库中的表

正确答案:D
答疑:数据库运行维护的主要内容工作内容包括日常维护、系统监控与分析、系统性能优化调整、系统进化(升级)等工作。其中日常维护又包括数据的备份与恢复、数据的完整性维护、安全性维护、存储空间管理与并发控制等。而使用开发人员提供的SQL语句初始化数据库中的表属于数据库的调试和试运行阶段内容,故选择D选项。


19数据库管理员应该定期对数据库进行重组,以保证数据库性能。下列有关数据库重组工作的说法,错误的是()。
重组工作中可能会对数据库数据的磁盘分区方法和存储空间进行调整

重组工作一般会修改数据库的内模式和模式,一般不改变数据库外模式

重组工作一般在数据库运行一段时间后进行,不应频繁进行数据库重组

重组工作中应尤其注意频繁修改数据的表,因为这些表很容易出现存储碎片,导致效率下降

正确答案:B
答疑:数据库的重组并不修改原设计的逻辑和物理结构,而数据库的重构则要部分的修改数据库的模式和内模式。故选择B选项。


20索引是数据库中重要的数据结构,关于索引现有下列说法:
Ⅰ.在某个查询中带排序的属性有多个时可以考虑在这些属性上建立复合索引
Ⅱ.一个表中最多只能有一个主索引或聚集索引
Ⅲ.多属性索引中,索引属性的顺序一般按照属性的长度进行排列
Ⅳ.在频繁更新的属性上建立索引可能导致系统开销过大
Ⅴ.B树索引一般适用于等值和范围查询,散列索引一般适用于范围查询
以上说法正确的是()。
仅Ⅰ、Ⅱ和Ⅳ

仅Ⅳ和Ⅴ

仅Ⅱ、Ⅲ和Ⅳ

仅Ⅰ、Ⅱ、Ⅲ和Ⅳ

正确答案:A
答疑:①在多属性索引中,索引属性的顺序是按照其区分度进行排序。②散列索引根据HASH算法构建索引,所以检索速度很快,但不能用于范围查询。因此选择A选项。


21某应用系统需使用运行于两个地点的分布式数据库,该应用系统经常需要进行某一查询操作,此查询需要对两个分布在两地数据量很大的表进行连接操作。这两张数据变化很慢。为了提高查询速度,下列方法中最可行的是()。
使用表水平分割方法,将两张表分别分割为多张表

将两张表复制交叉复制到两地

增加网络带宽,提高数据传输速度

增加数据库内存,缓冲更多的数据

正确答案:B
答疑:分布式数据库中,传输的代价是:I/O代价+CPU代价+通信代价。分布式数据库中查询优化的首要目标是:使查询执行时通信代价最省。因此如果把两张表交叉复制到两地就可以省去通信传输的时间,相比较于其它三个选项,该方法最优,因此选择B选项。


22检查点能减少数据库完全恢复时所必须执行的日志,提高数据库恢复速度。下列有关检查点的说法,错误的是()。
检查点记录的内容包括建立检查点时正在执行的事务清单和这些事务最近一个日志记录的地址

在检查点建立的同时,数据库管理系统会将当前数据缓冲区中的所有数据记录写入数据库中

数据库管理员应定时手动建立检查点,保证数据库系统出现故障时可以快速恢复数据库数据

使用检查点进行恢复时需要从"重新开始文件"中找到最后一个检查点记录在日志文件中的地址

正确答案:C
答疑:检查点应当由数据库恢复子系统自动的定期或者不定期的建立,而不应当由数据库管理员手动建立。故选择C选项。


23为了保证数据库系统稳定运行,需要使用服务器容错技术保证其运行服务器的可靠性。下列有关Active-Standby模式服务器容错技术的说法,错误的是()。
此模式需要两台服务器使用共享的存储设备,数据库中数据需要存储在此设备中

此模式需要在两台服务器之间建立专用的状态检测网络

此模式中增加串口方式检测服务器状态可以有助于避免"脑裂"现象出现

此模式的优点是两台服务器切换速度快,数据库连接不中断,应用不受影响

正确答案:D
答疑:主-备方式(Active-Standby方式)即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。该方式的特点是当Active状态服务器出现故障的时候,通过软件诊断将Standby机器激活,保证系统在最短时间内恢复正常使用。而D选项描述的是双主机方式的特点。双主机方式(Active-Active方式)即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态),优点是两台服务器切换速度快,数据库连接不中断,应用不受影响。故选择D选项。


24SQL Server 2008提供了三种恢复模式,不同的恢复模式决定了数据库支持的备份类型和还原方案。下列有关其恢复模式的说法,错误的是()。
简单恢复模式不记录事务日志,如果数据库损坏,简单恢复模式可能造成数据丢失

完整恢复模式记录所有的事务日志,同时事务日志记录保留到对其备份完毕为止

大容量日志恢复模式只对大容量操作进行最小记录,使事务日志不会被大容量加载操作所填充

大容量日志恢复模式不支持时点恢复,但可以支持还原单个数据页

正确答案:D
答疑:SQL Server 2008 支持三种恢复模式,即简单恢复模式、完整恢复模式和大容量日志恢复模式。
简单恢复:无日志备份。自动回收日志空间以减少空间需求,实际上不再需要管理事务日志空间。 最新备份之后的更改不受保护。在发生灾难时,这些更改必须重做。 只能恢复到备份的结尾。 
完整恢复:需要日志备份。数据文件丢失或损坏不会导致丢失工作。可以恢复到任意时点(例如应用程序或用户错误之前)。 
大容量日志恢复:需要日志备份。是完整恢复模式的附加模式,允许执行高性能的大容量复制操作。通过使用最小方式记录大多数大容量操作,减少日志空间使用量。
如果在最新日志备份后发生日志损坏或执行大容量日志记录操作,则必须重做自该上次备份之后所做的更改。否则不丢失任何工作。可以恢复到任何备份的结尾。不支持时点恢复。 
其中,如果符合下列任一要求,则使用完整恢复模式:您必须能够恢复所有数据;数据库包含多个文件组,并且您希望逐段还原读/写辅助文件组(以及可选地还原只读文件组);
您必须能够恢复到故障点; 您希望可以还原单个页;您愿意承担事务日志备份的管理开销。
因此还原单个数据页是完整恢复模式功能,因此选择D选项。


25SQL Server 2008支持多种数据库还原级别。下列有关其数据库恢复的说法,错误的是()。
在进行数据库整体还原和恢复过程中,此数据库处于脱机状态

SQL Server支持对数据库的一个数据文件进行还原,在还原过程中此文件处于脱机状态,数据库中的其他文件不受影响

在还原数据库之前,如果数据库的日志没有损坏,为了减少数据丢失可以进行一次尾部日志备份

在进行数据库还原的过程中可以将数据库移动到其他位置

正确答案:B
答疑:SQL Server支持对数据库中的一个数据文件进行还原的操作,在还原过程中数据库自动处于脱机状态,其它的都将文件不能进行读写操作,因此将受到一定的影响。故选择B选项。


26关于分布式数据库的数据分布策略,下列说法错误的是()。
集中式数据分配就是将所有数据片断安排在一个场地上

分割式数据分配是所有全局数据有且只有一份,它们被分割成若干片断,每个片断被分配在一个场地上

全复制式数据分配是全局数据有多个副本,每个场地上有一个完整的数据副本

混合式数据分配是一种介于集中式和全复制式的分布方式

正确答案:D
答疑:混合式数据分配是一种介于分割式和全复制式的分布方式。故选择D选项。


27一个在线书评、乐评分享网站,建有面向业务的数据库系统和面向分析的数据仓库系统,数据仓库系统需要每天从数据库应用系统的数据库导入新数据。有下列数据表:
Ⅰ.书籍表和书籍类别表
Ⅱ.用户表和好友关系表
Ⅲ.书评表和乐评表
Ⅳ.音乐专辑表和音乐分类表
上述表中,适合采用快照方式从数据库应用系统获取数据的是()。
仅Ⅰ和Ⅳ

仅Ⅱ和Ⅳ

仅Ⅰ、Ⅱ和Ⅳ

仅Ⅰ、Ⅱ和Ⅲ

正确答案:C
答疑:快照:该方法通过对当前数据表进行"照相",记录当前的数据表信息"相片",然后将当前的"相片"与以前的数据表"相片"进行比较,如果不一致将通过一定的方式传到数据仓库,从而实现数据的一致性,这种方式适合于更新频率较低的数据表。题目中的书评表和乐评表主要用于记载用户的评论,里面的内容更新频率较高,而数据仓库的更新频率较低,因此书评表和乐评表不适合用于快照的方法。而其它三个选项的更新频率相对较低,比较适合快照模式,故选择C选项。


28某电子商务平台为实现精准营销,提高向用户推荐商品的成功率,欲建立数据仓库系统,作为数据挖掘程序的数据源。假设业务型数据主要存放于销售数据表T1中,用户信息存放于用户表T2中。数据仓库将近5年的销售细节数据存放在数据表T3中,并在数据仓库中根据需要存放一些汇总数据。为达到这些要求,有如下一些方案:
Ⅰ.T3与T1实时更新,即每产生一条销售记录,同时写到T1和T3中,并触发数据挖掘程序运行,以增加数据挖掘结果的准确性
Ⅱ.用户每次产生新的销售记录,触发数据挖掘程序执行并得到针对该用户的推荐商品列表,然后写回T2中。T3每天定时从T1进行批量更新
Ⅲ.T3与T1实时更新,每天定时运行数据挖掘程序,将运行结果,也就是针对用户的推荐商品列表写回数据仓库的用户商品推荐表中
Ⅳ.T3每天做一次批量更新,并在数据仓库中生成相应的汇总数据,数据挖掘程序以细节数据或汇总数据作为数据源,将运行结果即针对用户的推荐商品列表写回数据仓库的用户商品推荐表中
上述方案中不合理的是()。
仅Ⅰ和Ⅳ

仅Ⅱ和Ⅳ

仅Ⅰ、Ⅱ和Ⅳ

仅Ⅰ、Ⅱ和Ⅲ

正确答案:D
答疑:数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织的新技术。它的建立能充分利用已有的数据资源,把数据转换为信息,从中挖掘出知识,最终创造出效益。数据仓库有若干基本特征,包括不可更新性和随时间变化性。所谓不可更新性就是用户在提取仓库中的数据进行分析时并不会同时对数据仓库中的数据进行更新操作,而数据变化性是数据仓库每隔一段时间进行数据的更新和处理。综上可以看出,数据仓库的更新与时间间隔有关,所以不会实时更新,即排除A、C,又因为对用户进行推荐时要结合以往的历史数据而不是仅通过当前数据分析,即B错。故选择D选项。


29下列关于数据仓库粒度的说法,错误的是()。
在数据仓库环境中,粒度是一个重要的设计问题,它影响到数据仓库的数据量和系统能够回答的查询的类型

一般在进行数据仓库的数据组织时,需要根据当前应用的需求来进行多粒度级设计

粒度越小,数据量越小,空间代价越小

粒度越大,综合程度越高

正确答案:C
答疑:在数据仓库环境中,粒度是一个重要的设计问题,它影响到数据仓库的数量以及系统能够回答的查询的类型。粒度越小,则详细程度越高,综合程度就越低,回答询问的种类也越多,数据量比较大,空间代价也大;粒度越大,综合程度就越高。综上所述可知C选项错误。故选择C选项。


30在常见的分布式数据库参考模式结构中,存在多种分布透明性。关于分布透明性,下列说法错误的是()。
分片透明性是最高级别的透明性,位于全局概念模式与分片模式之间

位置透明性使用户编写程序时只需要考虑数据分片情况,不需要了解各分片在各个场地的分配情况

局部数据模型透明性位于分配模式与局部概念模式之间

局部数据模型透明性使用户在编写应用程序时不需要了解全局数据的分片情况,但是需要了解各场地上数据库的数据模型

正确答案:D
答疑:局部数据模型透明性指用户或应用程序要了解分片及各片段存储的场地,但不必了解场地上使用的是何种数据模型。因此选择D选项。


每TPS代价值是用于衡量系统31比的指标。
答疑:【答案】性价
【解析】DBAS的性能指标有:
①数据操作响应时间(或数据访问响应时间):从提交请求到返回结果的时间;
②系统吞吐量:指系统在单位时间内所完成的事务或查询的数量,单位为TPS;
③允许并发访问的最大用户数:在保证响应时间的前提下,系统最多允许多少用户同时访问数据库;
④每TPS代价值,用于衡量系统性价(性能价格)比的指标。


DFD方法由四种基本元素构成,它们是32、处理、数据存储和外部项。
答疑:【答案】数据流
【解析】DFD即数据流图,它是由数据流、(对数据的加工)处理、数据存储和外部项组成。


UML中的33图的主要作用是陈述活动与活动之间流程控制的转移,其作用类似于流程图,然而与流程图不同的是其支持并行行为。
答疑:【答案】活动
【解析】此题考查活动图的主要作用,在UML中,对于业务流程支持的主要图形是活动图,活动图主要的目的在于陈述活动与活动之间的流程控制的转移。一般来说,活动图最适合用于描述系统或子系统的主要的工作流程。其他常用的图还有如下几种:
①类图是展现一组类、接口和协作以及它们之间的关系的一种静态视图。
②协作图是交互图的一种,其中包含一组对象、对象之间的联系以及对象间发送和接收的消息。
③状态图主要用来描述一个实体在发生一些事件时的状态变化情况,用于展示该实体处于不同状态时对不同事件做出响应后的状态变化情况。
④顺序图是用来描述对象自身及对象间信息传递顺序的视图。


设有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩),现要利用开窗函数查询每个学生的姓名、所在系及选课门数(不包括没选课的学生)。请补全下列语句:

SELECT DISTINCT 姓名, 所在系, COUNT(*) 34AS 选课门数 FROM 学生表 T1 JOIN 选课表 T2 ON T1.学号 = T2.学号
答疑:【答案】OVER(PARTITION BY T1.学号) OVER(PARTITION BY T2.学号)
【解析】开窗函数公式:函数名(列) OVER(选项)。OVER关键字表示把函数当成开窗函数而不是聚合函数。SQL SERVER 2005/2008支持两种开窗函数,分别为:排名开窗函数和聚集开窗函数。聚合开窗函数只能使用PARTITION BY子句不带任何语句,ORDER BY不能与聚合开窗函数一同使用。很多聚合函数都可以用作窗口函数的运算,如SUM,AVG,MAX,MIN,COUNT。


设在SQL Server 2008某数据库中有购买表(顾客号,商品号,购买时间),现要查询C02顾客购买过但C01顾客没有购买过的商品。请补全下列语句。
SELECT 商品号 FROM 购买表 WHERE 顾客号 = 'C02'
35
SELECT 商品号 FROM 购买表 WHERE 顾客号 = 'C01';
答疑:【答案】EXCEPT
【解析】EXCEPT是它在去掉两个或多个集合中重复数据的之后, 只会保留第一个结果集中的数据。该题其实就是查询表C01, 看表C01的数据在表C02中是否存在, 如果存在, 则删掉。


在T-SQL中,提取cur1游标中相对于当前行向下第5行数据的语句是

FETCH 365 FROM cur1 …
答疑:【答案】RELATIVE
【解析】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。


在T-SQL中,修改用户自定义函数fun1的T-SQL语句是37fun1 …
答疑:【答案】ALTER FUNCTION
【解析】①CREATE FUNCTION -- 定义一个新函数。
②ALTER FUNCTION -- 修改一个函数的定义。
③DROP FUNCTION -- 删除一个函数。


在SQL Server 2008中,在T表的c1列上定义唯一非聚集索引(索引名为idx1)的SQL语句是

CREATE 38INDEX idx1 ON T(c1)
答疑:【答案】UNIQUE NONCLUSTERED
【解析】CREATE [UNIQUE|CLUSTERED| NONCLUSTERED] INDEX INDEX_NAME ON TABLE_NAME(PROPERTY_NAME)其中UNIQUE和CLUSTERED为可选项,分别是建立唯一索引和聚簇索引。UNIQUE:表示此索引的每一个索引值只对应唯一的数据。CLUSTERED:表示要建立的索引是聚簇索引,即索引项的顺序与表中记录的物理顺序一致的索引组织。NONCLUSTERED是非聚集索引。


在SQL Server 2008中,具有全部用户表数据的增、删、改权限的数据库角色是39。
答疑:【答案】db_datawriter
【解析】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数据库中所有用户数据的权限。


在进行数据库模式调整使用分割表进行数据库优化时,一般有两种表分割方式:40分割和垂直分割。
答疑:【答案】水平
【解析】在进行数据库模式调整使用分割表进行数据库优化时,一般有两种表分割方式:水平分割和垂直分割。


新增汇总表的调优方法是一种以空间换41的调优方法。
答疑:【答案】时间
【解析】新增汇总表的调优方法是一种以空间换时间的调优方法。


设SQL Server 2008中有students数据库,需要对其进行事务日志备份,直接备份到D:\LogData目录下(此目录已存在)的Students_log.bak文件上,请补全下列语句:

BACKUP 42students TO DISK ='D:\LogData\Students_log.bak'
答疑:【答案】LOG
【解析】备份日志的语法:BACKUP LOG database_name(数据库名) TO backup_device(备份的地方)。


分布式数据库中,混合分片是水平分片、垂直分片和43分片的混合。
答疑:【答案】导出
【解析】分布式数据库分片类型:
①水平分片:按一定的条件把全局关系的所有元组划分成若干不相交的子集,每个子集都是关系的一个片段。
②垂直分片:把一个全局关系的属性集分成若干子集,并在这些子集上作投影运算,每个投影称为垂直分片。
③导出分片:又称为导出水平分片,即水平分片的条件不是本关系属性的条件,而是其他关系属性的条件。
④混合分片:以上三种方法的混合。可以先水平分片再垂直分片,或先垂直分片再水平分片,或其他形式的分片,但他们的结果是不相同的。


数据仓库的数据模型一般被划分为概念模型、44模型和物理模型。
答疑:【答案】逻辑
【解析】数据仓库的结构采用三级数据模型的方式,具体如下:   
概念模型: 也就是业务模型,由企业决策者、商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果。  
逻辑模型:用来构建数据仓库的数据库逻辑模型。根据分析系统的实际需求决策构建数据库逻辑关系模型,定义数据库物理结构及其关系。它关联着数据仓库的逻辑模型和物理模型这两头。
物理模型:构建数据仓库的物理分布模型,主要包含数据仓库的软硬件配置,资源情况以及数据仓库模式。


啤酒和尿布的故事是营销界的神话,啤酒和尿布两个看上去没有关系的商品摆放在一起进行销售获得了很好的销售效益。数据挖掘方法中,45挖掘就是用于发现数据库中数据间的关联性的。
答疑:【答案】关联规则
【解析】关联规则反映一个事物与其他事物之间的相互依存性和关联性。如果两个或者多个事物之间存在一定的关联关系,那么,其中一个事物可能存在的行为、特点就能够通过其他事物预测到。人们希望在海量商业交易记录中发现感兴趣的数据关联关系,借此来帮助商家作出决策。例如,商品分类设计、降价经销分析、生产安排、货架摆放策略等。


已知有如下关系模式:

其中带下划线的属性标识为所在关系模式的主码,T1中的a3是参照T2的外码,T1中的a5是参照T3的外码,T4中的a3是参照T2的外码,T4中的a5是参照T3的外码。
请将上述关系模式用适当的ER图表示出来,并用下划线标注出作为实体主码的属性。(10分)
46
答疑:【参考答案】

【解析思路】
ER图向关系模式转换涉及到两方面:①实体的转换;②实体间联系的转换。
实体的转换:在从ER图转换为关系模式时,一个实体就转换成一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。
实体间联系的转换:实体间存在三种联系,即1:1(一对一),1:m(一对多),m:n(多对多)。
在从ER向关系模式转换规则如下:
1:1(一对一)联系
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个键构成。
方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
1:m(一对多)联系
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由m端实体的键组成。
方法二:与m端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
m:n(多对多)联系
多对多联系转换成新的独立的模式时,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。
该题的解题过程是ER图向关系模式转换过程的反向推算。
由于T4中的a3, a5分别是T2和T3的主码,根据m:n(多对多)联系转换规则知道,T2模式代表的实体(假设实体名为t2)和T3模式代表的实体(假设实体名为t3)之间存在m:n(多对多)联系(假设联系名为t4),且a7是联系的属性。由于a4和a6没有在T4中,因此可以推论出a4和a6不是联系的属性,而是实体t2和实体t3的属性。
由于关系模式T1中的a3, a5分别是T2和T3的主码,a1、a2不属于T2、T3、T4,因此可以推断a2不是实体T2、T3和T4的属性。只能是另外一个实体(假设实体t1)的属性。而t2和t1之间存在1:m关系,t2和t1之间存在1:m关系。


设在SQL Server2008某数据库中有商品表和销售表,两个表的定义如下:
CREATE TABLE 商品表(
商品号 char(10) PRIMARY KEY,
商品名 varchar(40),
类别 varchar(20),
进货单价 int );
CREATETABLE 销售表(
商品号 char(10) REFERENCES 商品表(商品号),
销售时间 datetime,
销售数量 int,
销售单价 int,
PRIMARYKEY(商品号,销售时间) );
现要创建一个存储过程:查询指定类别的每种商品当前年销售总金额(销售总金额=销售单价* 销售数量)。请补全下列代码。(10分)
CREATEPROC p_TotalProfit
@lb varchar(20)
AS
SELECT 商品名,(SELECT【1】FROM 销售表 t1 WHERE【2】and【3】= year(Getdate())) AS 销售总金额
FROM 商品表 t2 WHERE【4】
47
答疑:【参考答案】
【1】销售单价*SUM(销售数量)
【2】t1.商品号=t2.商品号
【3】t1.销售时间
【4】t2.类别=@lb
【解题思路】
①整个select语句的含义是:根据where子句的条件表达式,从From子句指定的基本表或视图中找出满足条件的元组,再按select子句中的目标列表达式,选出元组中的属性值形成结果表。
②该题中(SELECT【】 FROM 销售表 t1 WHERE 【】 and 【】= year(Getdate()))是个嵌套,别名叫做销售总金额。
③语句执行过程:
先从商品表中按照第二个where形成一个初步查询结果。由于只有商品表中有类别,因此可知【4】填写:t2.类别=@lb(t2是商品表的别名,t1是销售表的别名)。由此可知该步是按给定类别查询。
销售总金额语句就应该在第一步的基础上求某年的总额。因此可以推断【3】是获得销售时间语句。因此该空填写t1.销售时间。由于是在第一步基础上的查询,所以应该实行连表查询,【2】应该填写连接的条件,即t1.商品号=t2.商品号。
【1】应该是求总额的语句。销售总金额=销售单价* 销售数量,即销售单价*SUM(销售数量)。


设某超市经营管理系统使用SQL Server 2008数据库管理系统,此数据库服务器有2颗CPU、16GB内存、2TB磁盘。上线运行1年后,用户在生成每天每个销售人员及每个收银台的总销售额报表时速度缓慢。经技术人员分析,发现速度缓慢的原因为销售单据表和销售单据明细表数据量合计已经达到60GB。已知这两个表结构如下:
销售单据表(销售单据编号,销售时间,销售人员编号,收银台编号)
销售单据明细表(销售单据编号,商品编号,单价,数量)
在进行此报表计算时数据库服务器CPU消耗非常高。为了优化此操作,某工程师建议在销售单据表中增加"付款总金额"属性,取值由触发器自动计算。请从磁盘空间使用、销售操作时对数据库服务器的影响、数据一致性以及对总销售额计算速度影响方面分析此方案优劣。请判断此方案是否可行,并从时空代价和优化效果方面分析原因。(10分)
48
答疑:【参考答案】
此方案不可行。
①触发器可以通过数据库中的相关表进行层叠更改,这比直接把代码写在前台的做法更安全合理,保证了数据的一致性,但同时增加了磁盘空间的消耗。在超市经营中要批量操作、多次触发的情况下,触发器的效率低,因为它相当于每次都执行一段SQL语句,使CPU的消耗更高。因而从时空代价角度来说并不能达到优化的效果。
②在数据单据表中增加"付款总金额"不是正确的优化方法,应该在数据单据明细表中增加"付款总金额",这样才能提高查询效率。
【解题思路】
在数据库设计阶段,主要强调的是高效率利用存储空间,减少数据的冗余,减少数据的不一致性,这个过程也就是规范化的过程。但是在数据库运行阶段要考虑到高效率的进行数据处理。
完全规划化的数据库会产生很多表,对于一个频繁使用的查询,如果它要求操作多个相关表中的数据,则每次为生成需要的查询结果而在连接多个表中相关行时,数据库管理系统就会消耗更多的计算资源,因为连接操作非常耗时。
而反规范化是将规范化的关系转换为非规范化的关系的过程,目的是提高查询的效率。常见的方法有增加派生冗余列,增加冗余列,重新组表,分割表和新增汇总表等方法。
该题解决的方式就是增加派生冗余列--"付款总金额"。派生性冗余列是指表中增加的列由表中的一些数据项经过计算而成,它的作用是查询时减少连接操作,避免使用聚合函数。例如销售单据明细表(销售单据编号,商品编号,单价,数量)中增加"付款总金额",因为付款总金额=单价*数量得到,说明"付款总金额"是派生性冗余列。如果不要该字段,那么每次使用总价时,都要先执行代码计算后才能使用,如果商品数量较多,而且要频繁使用"付款总金额"时,计算"付款总金额"时执行的次数也会随着增加,这显然会影响数据库的执行效率。若增加"付款总金额"这个派生性冗余字段,虽然破坏了规范化原则,但只要执行一次计算"付款总金额"就可以把商品金额存在数据库中,以后不管什么时候使用"付款总金额"字段,只需要提取其值就可以了,不必在执行代码了。因此增加"付款总金额",虽然提高了磁盘空间的使用,但是可以提高系统执行的效率,达到以空间换时间的目的。


 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/729514
推荐阅读
相关标签
  

闽ICP备14008679号