1、计算机三级数据库技术-87 (1)及答案解析(总分:100.00,做题时间:90 分钟)一、单选题(总题数:20,分数:60.00)1.数据库系统的三级模式结构和二层映像功能提供了数据的逻辑独立性和物理独立性。下列提供逻辑独立性的是_(分数:3.00)A.外模式/模式映像B.模式/内模式映像C.内模式/外模式映像D.模式/模式映像2.浏览器/服务器架构是现阶段非常流行的数据库应用系统架构。在此架构中,应用服务器起到了非常重要的作用。下列关于应用服务器的说法,错误的是_(分数:3.00)A.应用服务器一般运行程序代码,实现面向具体应用领域的业务规则,数据库服务器承担数据存储、管理等功能B.应用服
2、务器会根据用户请求连接相应的数据库,获取数据并进行处理,将结果返回给用户C.应用服务器一般需具有数据访问和数据存储等功能,在数据库服务器出现问题时可以继续向用户提供服务D.应用服务器一般提供了集群、失效恢复、负载均衡等公共服务,可以大幅度提高系统性能和可靠性3.关系模型是数据库系统最常用的一种数据模型。下列关于关系模型的说法,错误的是_(分数:3.00)A.关系模型中的关系是一个二维表,表中的一行对应关系中的一个元组B.按照一定的规则可以将 ER 模型转换为关系模型中的关系模式C.关系模型是建立在集合论的基础上的,关系模型中数据存取对用户是透明的D.关系模型中的关系模式描述关系的动态结构,其内
3、容随用户对数据库的操作而变化4.在数据库应用系统的需求分析阶段,设有如下工作: 分析与描述目标系统需要完成的功能 分析与描述目标系统对响应时间、存储容量的要求 分析与描述目标系统涉及的数据范围、数据的属性特征及数据之间的关系 分析与描述每项功能活动需要的输入数据、业务规则及输出数据 分析与描述目标系统的总体结构、功能活动及各功能活动之间的关系 以上属于系统功能建模内容的是_(分数:3.00)A.仅、和B.仅、和C.仅、和D.仅、和5.在概念模型中,属性用于描述事物的特征或性质。关于属性有下列说法: 一个实体集中的属性名要唯一 属性一般用名词或名词短语命名 一个属性的值可以取自不同的域 实体集的
4、标识属性能够唯一识别实体集中每一个实体 标识属性的取值不能重复,但可以为空 以上说法正确的是_(分数:3.00)A.仅、和B.仅、和C.仅、和D.仅、和6.设有关系模式:作者(作者编号,姓名,身份证号,职业,出生日期)。下列能够作为该关系模式候选码的是_(分数:3.00)A.作者编号,姓名B.作者编号,身份证号C.作者编号,职业D.身份证号,出生日期7.人机界面是数据库应用系统的一个重要组成部分,人机界面设计与用户的关系非常密切。关于人机界面设计,下列说法错误的是_(分数:3.00)A.人机界面设计时,应使用户感觉系统运行始终处于用户的控制之下,人机界面应该向用户及时反馈,保持人机界面与用户之
5、间的双向交流B.当系统发生错误时,人机界面应为用户提供有意义的反馈信息,有时可以提供截屏等功能,使用户可以了解错误,并及时向技术人员反馈问题C.良好的人机界面应能容忍用户使用过程中发生的操作错误,并能够方便地从错误中恢复D.设计人机界面可采用原型迭代法,首先进行用户界面详细设计,然后与用户不断讨论,改进设计方案8.在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和整理。此过程不仅需要描述用户提出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述。设在某商场经营管理系统的需求分析阶段整理了下列需求: 系统需要支持会员制 系统不需要考虑财务核算功能 系统应长期稳定运行 系统
6、应有销售统计功能 系统应保证数据存储安全 上述需求中属于非功能需求的是_(分数:3.00)A.仅和B.仅和C.仅和D.仅、和9.在使用 UML 对数据库应用系统进行建模的过程中,状态图和活动图常用于动态建模。下列状态图或活动图语法正确的是_ A B C D (分数:3.00)A.B.C.D.10.在 SQL Server 2008 中,如果数据库 tempdb 的空间不足,可能会造成一些操作无法进行,此时需要扩大 tempdb 的空间。下列关于扩大 tempdb 空间的方法,错误的是_(分数:3.00)A.手工扩大 tempdb 中某数据文件的大小B.设置 tempdb 中的数据文件为自动增长
7、方式,每当空间不够时让其自动增长C.手工为 tempdb 增加一个数据文件D.删除 tempdb 中的日志内容,以获得更多的数据空间11.设在 SQL Server 2008 某数据库中有销售表(商品号,销售时间,销售数量,销售价格),其中商品号的类型为 char(6),销售价格的类型为 int。现要定义统计指定商品销售总价的标量函数。有下列定义该标量函数的语句 Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int AS BEGIN Return(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID)
8、 END Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int AS BEGIN Returns(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) END Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int BEGIN Return(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) END Create FUNCTION dbo.GetTotal(GoodID char(6) Returns i
9、nt Returns(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) 上述语句中,正确的是_(分数:3.00)A.仅和B.仅和C.仅和D.仅和12.分区表是将一个表的数据按水平方式划分为不同的子集,从而可以更快速有效地访问数据子集。现有表 R(A, B)以及针对该表的如下 SQL 语句,如果基于列 A 对 R 进行范围分区,该分区设计方案能提高其性能的 SQL 语句是_(分数:3.00)A.SELECT A,SUM(B) FROM R GROUP BY AB.SELECT A FROM R ORDER BY B, AC.DELETE FROM R W
10、HERE A 10D.SELECT MAX(A) FROM R WHERE B = 1013.下列关于 SQL Server 2008 架构的说法,错误的是_(分数:3.00)A.在一个数据库中,一个用户可以拥有多个架构,一个架构只能属于一个用户B.架构相当于数据库对象的容器,在同一个数据库中架构不能重名C.架构是数据库中的逻辑命名空间,同一个数据库的不同架构中可以存在同名表D.在同一个架构中可以定义表、视图等不同数据库对象14.设数据库管理员为 SQL Server 2008 默认实例中的某数据库实施了基于维护计划的数据库备份任务。配置完成后,发现此维护计划并未执行但数据库运行正常。有关此维
11、护计划未执行的原因,下列说法中最有可能的是_(分数:3.00)A.“SQL Server (MSSQLSERVER)“服务未启动B.“SQL Server 代理 (MSSQLSERVER)“服务未启动C.“SQL Server Browser“服务未启动D.“SQL Server VSS Writer“服务未启动15.下列关于 SQL Server 2008 数据库文件的说法,错误的是_(分数:3.00)A.一个数据库可以包含多个数据文件,但这些数据文件不能放置在同一个物理磁盘上B.数据库的数据文件和日志文件最好分别存放在不同的物理磁盘上C.用户数据库中包含很多系统信息,这些系统信息必须存储在
12、主要数据文件中D.数据库的主要数据文件必须存放在 PRIMARY 文件组中16.在 SQL Server 2008 中,某用户仅具有登录到某 SQL Server 实例的权限。下列关于该用户能够进行的操作的说法,正确的是_(分数:3.00)A.仅能够查询 master、model 和 msdb 系统数据库中的部分数据B.能够查询和修改 master、model 和 msdb 系统数据库中的部分数据C.仅能够查询 master 和 msdb 系统数据库中的部分数据D.能够查询和修改 master 和 msdb 系统数据库中的部分数据17.SQL Server 2008 提供了方便的数据导入/导出
13、向导,现利用该向导将 S1 服务器上某数据库中 T1 表的数据导入到 S2 服务器某数据库中已有的 T2 表中。在数据源上的操作由用户 U1 完成,在目的服务器上的操作由用户 U2 完成。则 U1 和 U2 需要具有的权限是_(分数:3.00)A.U1 需要 T1 表的查询权限和 T2 表的插入权限,U2 无需任何权限B.U2 需要 T1 表的查询权限和 T2 表的插入权限,U1 无需任何权限C.U1 需要 T1 表的查询权限,U2 需要 T2 表的插入权限D.U1 需要 T1 表的查询权限和 S2 服务器的登录权限,U2 需要 T2 表的插入权限和 S1 服务器的登录权限18.事务是数据库中
14、非常重要的概念。下列关于事务的说法,错误的是_(分数:3.00)A.当数据库出现事务故障或系统故障时,可以通过数据库日志文件进行恢复B.事务并发执行可能导致数据错误,采用三级加锁协议可以保证数据的一致性C.为了检测死锁,数据库管理系统会在执行每个事务时检测事务等待图中是否出现回路D.数据库管理系统可以采用先来先服务的方式防止活锁现象的出现19.在数据库运行过程中,数据库管理员应对数据库运行情况进行监控。设有如下可能需要监控的内容: 数据库空间使用情况 数据库服务器网络是否通畅 数据库缓冲区命中率情况 数据库用户向数据库发送的每条 SQL 语句 数据库中索引使用情况 上述工作中属于数据库日常监控
15、内容的是_(分数:3.00)A.仅、和B.仅和C.仅、和D.全部均是20.下列关于数据库性能优化的说法,错误的是_(分数:3.00)A.增加派生性冗余列可以降低查询过程中的计算量B.增加冗余列可以减少查询过程中的 UNION 操作C.适当降低关系模式的规范化程度,可以减少查询过程中的 JOIN 操作D.当一个表的数据量超过一定规模时,可以采用分割表的方法提高效率二、应用题(总题数:5,分数:20.00)21.数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中 1 协议可以完全保证并发事务数据的一致性。 (分数:4.00)22.在数据库系统出现系统故障后进行恢复时,对于事
16、务 T,如果日志文件中有 BEGIN TRANSACTION 记录,而没有 COMMIT 或 ROLLBACK 记录,则数据库管理系统处理这种事务时应执行的操作是 1。 (分数:4.00)23.在动态转储中,利用转储文件只能将数据库恢复到转储过程中的某个状态,且转储文件中的数据可能不一致,只有和 1 文件综合起来使用,才能将数据库恢复到一致状态。 (分数:4.00)24.通常数据库的转储机制有三种,分别是完全转储、差量转储和 1 转储。 (分数:4.00)25.数据仓库是面向主题的、 1 的、非易失的、随时间变化的数据集合,用来支持管理人员的决策。 (分数:4.00)三、设计与应用题(总题数:
17、1,分数:20.00)26.在 SQL Server 2008 中,设某数据库中有商品表(商品号,商品名,进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商品的单价。现要求每当在销售表中插入前 4 列数据时(假设一次只插入一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售表的第 5 列“本次利润”。请编写实现上述功能的后触发型触发器代码。 (分数:20.00)_计算机三级数据库技术-87 (1)答案解析(总分:100.00,做题时间:90 分钟)一、单选题(总题数:20,分数:60.00)1.数据库系统的
18、三级模式结构和二层映像功能提供了数据的逻辑独立性和物理独立性。下列提供逻辑独立性的是_(分数:3.00)A.外模式/模式映像 B.模式/内模式映像C.内模式/外模式映像D.模式/模式映像解析:解析 数据库的三级模式由外模式、模式、内模式构成。外模式是用户可见的部分数据的存在形式;模式可以等价为全体数据的逻辑结构且用户不可见,是三级模式的中间部分;内模式对应数据库的物理结构和存储方式。当模式改变时,由数据库管理员对各个外模式/模式的映像作相应的改变,但是外模式可以不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,因此,外模式/模式映像保证了数据与程序的逻辑独立性。2.浏览器/服务器架
19、构是现阶段非常流行的数据库应用系统架构。在此架构中,应用服务器起到了非常重要的作用。下列关于应用服务器的说法,错误的是_(分数:3.00)A.应用服务器一般运行程序代码,实现面向具体应用领域的业务规则,数据库服务器承担数据存储、管理等功能B.应用服务器会根据用户请求连接相应的数据库,获取数据并进行处理,将结果返回给用户C.应用服务器一般需具有数据访问和数据存储等功能,在数据库服务器出现问题时可以继续向用户提供服务 D.应用服务器一般提供了集群、失效恢复、负载均衡等公共服务,可以大幅度提高系统性能和可靠性解析:解析 应用服务器是指通过各种协议把商业逻辑提供给客户端的程序。它提供了访问商业逻辑的途
20、径以供客户端应用程序使用,并接收来自于 Web 浏览器的用户请求,根据应用领域业务规则执行相应的数据库应用程序,通过访问接口向数据库服务器提出数据操作请求;它亦接收来自于数据库服务器的数据访问结果,并通过客户端将结果返回用户。所以当数据库服务器出现问题时无法向用户提供服务。3.关系模型是数据库系统最常用的一种数据模型。下列关于关系模型的说法,错误的是_(分数:3.00)A.关系模型中的关系是一个二维表,表中的一行对应关系中的一个元组B.按照一定的规则可以将 ER 模型转换为关系模型中的关系模式C.关系模型是建立在集合论的基础上的,关系模型中数据存取对用户是透明的D.关系模型中的关系模式描述关系
21、的动态结构,其内容随用户对数据库的操作而变化 解析:解析 关系模式描述关系的静态结构,它是静态、稳定的,而关系是动态、随用户对数据库的操作而变化的。考生要区分开来关系模式与关系。4.在数据库应用系统的需求分析阶段,设有如下工作: 分析与描述目标系统需要完成的功能 分析与描述目标系统对响应时间、存储容量的要求 分析与描述目标系统涉及的数据范围、数据的属性特征及数据之间的关系 分析与描述每项功能活动需要的输入数据、业务规则及输出数据 分析与描述目标系统的总体结构、功能活动及各功能活动之间的关系 以上属于系统功能建模内容的是_(分数:3.00)A.仅、和 B.仅、和C.仅、和D.仅、和解析:解析 数
22、据库系统设计分为 6 个阶段:需求分析、概念结构设计、逻辑结构设计和物理结构设计等。属于物理设计阶段,属于逻辑结构设计阶段,故答案选 A。5.在概念模型中,属性用于描述事物的特征或性质。关于属性有下列说法: 一个实体集中的属性名要唯一 属性一般用名词或名词短语命名 一个属性的值可以取自不同的域 实体集的标识属性能够唯一识别实体集中每一个实体 标识属性的取值不能重复,但可以为空 以上说法正确的是_(分数:3.00)A.仅、和B.仅、和 C.仅、和D.仅、和解析:解析 :一个属性的值必须属于唯一的域,域在这里相当于数据类型的子集,属性的取值必须为同一域。:标识属性的值不能重复且不可以为空。6.设有
23、关系模式:作者(作者编号,姓名,身份证号,职业,出生日期)。下列能够作为该关系模式候选码的是_(分数:3.00)A.作者编号,姓名B.作者编号,身份证号 C.作者编号,职业D.身份证号,出生日期解析:解析 关系模型中的候选码定义为某一组属性可以唯一标识一个元组,则称为该属性组的候选码,所以其候选码属性的取值必须不能有重复也不能为空。题目中姓名,职业,出生日期都可能重复。7.人机界面是数据库应用系统的一个重要组成部分,人机界面设计与用户的关系非常密切。关于人机界面设计,下列说法错误的是_(分数:3.00)A.人机界面设计时,应使用户感觉系统运行始终处于用户的控制之下,人机界面应该向用户及时反馈,
24、保持人机界面与用户之间的双向交流B.当系统发生错误时,人机界面应为用户提供有意义的反馈信息,有时可以提供截屏等功能,使用户可以了解错误,并及时向技术人员反馈问题C.良好的人机界面应能容忍用户使用过程中发生的操作错误,并能够方便地从错误中恢复D.设计人机界面可采用原型迭代法,首先进行用户界面详细设计,然后与用户不断讨论,改进设计方案解析:解析 人机界面的设计可采用原型迭代法,首先进行初步设计,再进行用户界面细节设计,最后是原型设计与改进。8.在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和整理。此过程不仅需要描述用户提出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述
25、。设在某商场经营管理系统的需求分析阶段整理了下列需求: 系统需要支持会员制 系统不需要考虑财务核算功能 系统应长期稳定运行 系统应有销售统计功能 系统应保证数据存储安全 上述需求中属于非功能需求的是_(分数:3.00)A.仅和B.仅和 C.仅和D.仅、和解析:解析 需求分析就是分析用户的应用请求。和不是用户所考虑的问题,属于系统的物理设计阶段,属于系统运行与维护阶段所考虑的问题。9.在使用 UML 对数据库应用系统进行建模的过程中,状态图和活动图常用于动态建模。下列状态图或活动图语法正确的是_ A B C D (分数:3.00)A.B.C.D. 解析:解析 这属于 UML 设计范畴,所有活动有
26、关判断的部分要用菱形表示。10.在 SQL Server 2008 中,如果数据库 tempdb 的空间不足,可能会造成一些操作无法进行,此时需要扩大 tempdb 的空间。下列关于扩大 tempdb 空间的方法,错误的是_(分数:3.00)A.手工扩大 tempdb 中某数据文件的大小B.设置 tempdb 中的数据文件为自动增长方式,每当空间不够时让其自动增长C.手工为 tempdb 增加一个数据文件D.删除 tempdb 中的日志内容,以获得更多的数据空间 解析:解析 数据库中的日志文件通常记录数据库的操作记录,对数据库的安全性与可靠性有着重要的作用。当数据库被破坏或者出现故障时,常常需
27、要根据日志文件来对数据库进行恢复等操作,手动删除tempdb 中的日志文件则将会破坏数据库的安全性和可靠性。11.设在 SQL Server 2008 某数据库中有销售表(商品号,销售时间,销售数量,销售价格),其中商品号的类型为 char(6),销售价格的类型为 int。现要定义统计指定商品销售总价的标量函数。有下列定义该标量函数的语句 Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int AS BEGIN Return(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) END Create
28、FUNCTION dbo.GetTotal(GoodID char(6) Returns int AS BEGIN Returns(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) END Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int BEGIN Return(SELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) END Create FUNCTION dbo.GetTotal(GoodID char(6) Returns int Returns(S
29、ELECT SUM(销售价格) FROM 销售表 WHERE 商品号 = GoodID) 上述语句中,正确的是_(分数:3.00)A.仅和B.仅和C.仅和D.仅和 解析:解析 标量函数返回一个确定类型的标量值。函数体语句定义在 BEGIN-END 语句内,其中包含了可以返回值的 Transact-SQL 命令。 创建标量函数的语法如下: CREATE FUNCTION owner_name. function_name ( parameter_name AStype_schema_name.parameter_data_type = default ,.n ) RETURNS return_d
30、ata_type AS BEGIN function_body RETURN scalar_expression END ;12.分区表是将一个表的数据按水平方式划分为不同的子集,从而可以更快速有效地访问数据子集。现有表 R(A, B)以及针对该表的如下 SQL 语句,如果基于列 A 对 R 进行范围分区,该分区设计方案能提高其性能的 SQL 语句是_(分数:3.00)A.SELECT A,SUM(B) FROM R GROUP BY A B.SELECT A FROM R ORDER BY B, AC.DELETE FROM R WHERE A 10D.SELECT MAX(A) FROM
31、R WHERE B = 10解析:解析 A 属性基于对 R 进行水平划分,即区别子集主要是通过 A 属性。B、D 都是基于 B 属性对 R 的划分。C 只是删除了,R 表中不等于 10 的记录,不属于划分分区的方式。13.下列关于 SQL Server 2008 架构的说法,错误的是_(分数:3.00)A.在一个数据库中,一个用户可以拥有多个架构,一个架构只能属于一个用户 B.架构相当于数据库对象的容器,在同一个数据库中架构不能重名C.架构是数据库中的逻辑命名空间,同一个数据库的不同架构中可以存在同名表D.在同一个架构中可以定义表、视图等不同数据库对象解析:解析 架构是形成单个命名空间的数据库
32、实体的集合。命名空间也是一个集合,其中每个元素的名称都是唯一的。架构与用户的关系是一对多的关系,一个用户只能对应一个架构,但多个用户可以共享一个架构,所以选 A。14.设数据库管理员为 SQL Server 2008 默认实例中的某数据库实施了基于维护计划的数据库备份任务。配置完成后,发现此维护计划并未执行但数据库运行正常。有关此维护计划未执行的原因,下列说法中最有可能的是_(分数:3.00)A.“SQL Server (MSSQLSERVER)“服务未启动B.“SQL Server 代理 (MSSQLSERVER)“服务未启动 C.“SQL Server Browser“服务未启动D.“SQ
33、L Server VSS Writer“服务未启动解析:解析 SQL Server Agent 是一个任务规划器和警报管理器,在实际应用环境下,可以先将那些周期性的活动定义成一个任务,然后让其在 SQL Server Agent 的帮助下自动运行。假如考生是一名系统管理员,则可以利用 SQL Server Agent 向自己通知某些警告信息,从而定位出现的问题以提高管理效率。SQL Server Agent 主要包括以下几个组件:作业、警报和操作。所以选 B。15.下列关于 SQL Server 2008 数据库文件的说法,错误的是_(分数:3.00)A.一个数据库可以包含多个数据文件,但这些
34、数据文件不能放置在同一个物理磁盘上 B.数据库的数据文件和日志文件最好分别存放在不同的物理磁盘上C.用户数据库中包含很多系统信息,这些系统信息必须存储在主要数据文件中D.数据库的主要数据文件必须存放在 PRIMARY 文件组中解析:解析 一个数据库可以包含多个数据文件,这些文件可以存放在一个物理磁盘上,也可以放在不同的物理磁盘上。16.在 SQL Server 2008 中,某用户仅具有登录到某 SQL Server 实例的权限。下列关于该用户能够进行的操作的说法,正确的是_(分数:3.00)A.仅能够查询 master、model 和 msdb 系统数据库中的部分数据B.能够查询和修改 ma
35、ster、model 和 msdb 系统数据库中的部分数据C.仅能够查询 master 和 msdb 系统数据库中的部分数据 D.能够查询和修改 master 和 msdb 系统数据库中的部分数据解析:解析 SQL Server 实例就是在数据库中存在的现实的数据库例子,它是后台进程和数据库文件的集合。仅具有登录权限的用户对 SQL Server 只能进行系统数据库中有关 SQL Server 的一些系统信息的查询,即只能对 master、msdb 数据库部分数据进行查询。所以选 C。17.SQL Server 2008 提供了方便的数据导入/导出向导,现利用该向导将 S1 服务器上某数据库中
36、 T1 表的数据导入到 S2 服务器某数据库中已有的 T2 表中。在数据源上的操作由用户 U1 完成,在目的服务器上的操作由用户 U2 完成。则 U1 和 U2 需要具有的权限是_(分数:3.00)A.U1 需要 T1 表的查询权限和 T2 表的插入权限,U2 无需任何权限B.U2 需要 T1 表的查询权限和 T2 表的插入权限,U1 无需任何权限C.U1 需要 T1 表的查询权限,U2 需要 T2 表的插入权限 D.U1 需要 T1 表的查询权限和 S2 服务器的登录权限,U2 需要 T2 表的插入权限和 S1 服务器的登录权限解析:解析 U1 要将 T1 表中的数据导出,所以要有对数据的查
37、看权限。而 U2 负责将数据导入到 T2 表中,则要对表 T2 有写入权限。所以选 C。18.事务是数据库中非常重要的概念。下列关于事务的说法,错误的是_(分数:3.00)A.当数据库出现事务故障或系统故障时,可以通过数据库日志文件进行恢复B.事务并发执行可能导致数据错误,采用三级加锁协议可以保证数据的一致性C.为了检测死锁,数据库管理系统会在执行每个事务时检测事务等待图中是否出现回路 D.数据库管理系统可以采用先来先服务的方式防止活锁现象的出现解析:解析 检测死锁有多种方法,包括超时法、等待图法等。事务等待图法动态地反映了所有事务的等待情况,并发控制的子系统周期性地生成事务等待图进行检测,而
38、不是在执行每个事务时进行检测。所以选择 C。19.在数据库运行过程中,数据库管理员应对数据库运行情况进行监控。设有如下可能需要监控的内容: 数据库空间使用情况 数据库服务器网络是否通畅 数据库缓冲区命中率情况 数据库用户向数据库发送的每条 SQL 语句 数据库中索引使用情况 上述工作中属于数据库日常监控内容的是_(分数:3.00)A.仅、和 B.仅和C.仅、和D.全部均是解析:解析 本题是对数据库维护的考查,服务器网络的检测不是数据库管理员的职责,而应是操作系统管理员的职责。用户向数据库发送的 SQL 数量庞大而且没有稳定的衡量指标,所以不属于日常监控范围。选择 A。20.下列关于数据库性能优
39、化的说法,错误的是_(分数:3.00)A.增加派生性冗余列可以降低查询过程中的计算量B.增加冗余列可以减少查询过程中的 UNION 操作 C.适当降低关系模式的规范化程度,可以减少查询过程中的 JOIN 操作D.当一个表的数据量超过一定规模时,可以采用分割表的方法提高效率解析:解析 增加冗余列指的是在多个表中添加相同的列,这样虽然增加了数据库服务器存储的负担,但可以减少查询过程中的 JOIN(连接)操作,而不是 UNION(并)操作。所以选 B。二、应用题(总题数:5,分数:20.00)21.数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中 1 协议可以完全保证并发事
40、务数据的一致性。 (分数:4.00)解析:三级加锁22.在数据库系统出现系统故障后进行恢复时,对于事务 T,如果日志文件中有 BEGIN TRANSACTION 记录,而没有 COMMIT 或 ROLLBACK 记录,则数据库管理系统处理这种事务时应执行的操作是 1。 (分数:4.00)解析:UNDO23.在动态转储中,利用转储文件只能将数据库恢复到转储过程中的某个状态,且转储文件中的数据可能不一致,只有和 1 文件综合起来使用,才能将数据库恢复到一致状态。 (分数:4.00)解析:日志24.通常数据库的转储机制有三种,分别是完全转储、差量转储和 1 转储。 (分数:4.00)解析:增量25.
41、数据仓库是面向主题的、 1 的、非易失的、随时间变化的数据集合,用来支持管理人员的决策。 (分数:4.00)解析:集成三、设计与应用题(总题数:1,分数:20.00)26.在 SQL Server 2008 中,设某数据库中有商品表(商品号,商品名,进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商品的单价。现要求每当在销售表中插入前 4 列数据时(假设一次只插入一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售表的第 5 列“本次利润”。请编写实现上述功能的后触发型触发器代码。 (分数:20.00)_正
42、确答案:()解析:解题思路 触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在 DBMS 核心层进行集中的完整性控制。触发器类似于约束,但比约束更加灵活,可以实施比 FOREIGN KEY 约束、CHECK 约束更为复杂的检查和操作,具有更精细和强大的数据控制能力。 触发器的创建格式: CREATE TRIGGER Schema-name.trigger-name ONtable|view FOR|AFTER|INSTEAD OF INSERT,UPDATE,DELETE ASSql-statement ; 对应于本题中,触发事件为在销售表中插入前四列,条件为无条件执行,触发体动作为计算本次利润并插入表中。