当前位置:问答库>考研试题

2016年兰州交通大学光电技术与智能控制教育部重点实验室专业综合考试(四)之数据库系统概论考研复试题库

  摘要

一、选择题

1. SQL 语言中,HAVING 子句用于筛选满足条件的( )。

A. 列

B. 行

C. 分组

D. 元组

【答案】C

【解析】HA VING 子句常与GROUPBY 子句联合使用,

期所有课程中,班级平均成绩高于75的课程号、课程名称时,通常指出分组的依据列,子句应该指出分组的即依据那个属性列来分组,而HA VING 子句则指出各分组提取的条件。例如:要求列出某班本学

HA VING 子句则提出该课程的全班平均成绩A VG 要高于75, 依据是选课关系中的课程号属性列,

低于75的就不提取了。

2. 下列哪个函数能将一个表达式从一种数据类型改变为另一种数据类型?( ) A. B. C. D.

【答案】C

【解析】CONVERT 函数能将某种数据类型的表达式显式转换为另一种数据类型。其他3个都是聚集函数,COUNT ( )的功能是统计一列中值的个数

;统计元组个数

计算一列值的平均值(此列必须是数值型)。此外,SQL 语言中还提供了另一个数据

类型转换函数CAST , 这两个函数均能将表达式值转换为指定的数据类型,CONVERT 可以指定长度,而CAST 不能指定长度。

3. 文件系统与数据库系统的重要区别是数据库系统具有( )。

A. 数据共享性

B. 数据无冗佘

C. 数据结构化

D. 数据独立性

【答案】C

【解析】文件系统和数据库系统都具有数据独立性和数据共享性,只是文件系统的对应性能

弱于数据库系统。至于数据无冗余,没有哪个系统可以完全做到。而通过数据模型表示复杂的数据结构,则是数据库系统所独有的。

4. 对数据对象施加封锁可能会引起活锁和死锁问题,避免活锁的简单方法是采用( )的策略。

A. 顺序封锁法

B. 依次封锁法

C. 优先级尚先服务

D. 先来先服务

【答案】D

【解析】活锁:某个事务永远得不到对某个数据资源的封锁,从而永远处于等待状态的现象;采用先来先服务的策略可以有效地避免活锁。

5. 如果一个系统定义为关系系统,则它必须( )。

A. 支持关系数据库

B. 支持选择、投影和连接运算

C.A 和B 均成立

D.A 、B 都不需要

【答案】C

6. 按照数据库应用系统生命周期模型,在开发某数据库应用系统时,对系统采用的软硬件及技术方案等作出合理的评估并提出选择建议的工作属于( )。

A. 规划与分析阶段的系统规划与定义

B. 规划与分析阶段的可行性分析

C. 需求分析阶段的业务规则需求分析

D. 系统设计阶段的总体设计

【答案】B

【解析】技术可行性分析是指对系统采用的软硬件及技术方案等作出合理的评估并提出选择建议,是根据用户提出的系统功能、性能及实现系统的各项约束条件来进行分析的,属于规划与分析阶段。

7. 用于实现数据存取安全性的SQL 语句是( )。

【答案】C

【解析】CREATE TABLE是建立基表的语句;COMMIT 是提交事务的语句;ROLLBACK 是

回滚事务的语 句;GRANT 是授权语句,REVOKE 是回收权限的语句。

8. 在SQL Server中,可以通过数据库对象及各种约束来保证数据的完整性,以下都属于数据库对象的有( )。

A.DEFAULT 、CHECK 和 UNIQUE

B.DEFAULT 、CHECK 和 RULE

C.CHECK 和 DEFAULT

D.DEFAULT 和 RULE

【答案】D

SQL Server 的约束包括 UNIQUE 、DEFAULT 、RULE 、PRIMARY KEY 和 FOREIGN 【解析】

KEY 等,但 属于数据库对象的是RULE 、DEFAULT , 当它们创建后可以绑定到一列或者几列上,并可以重复使用。

9. 关于数据视图与三级模式,下列说法错误的是( )。

A. 数据视图是指用户从某个角度看到的客观世界数据对象的特征

B. 外模式是数据库用户能使用的局部数据,描述外模式时,通常需要给出其物理结构

C. 概念模式以数据模型的形式描述数据

D. 三级模式结构实现了数据的独立性

【答案】B

【解析】外模式有时也称为子模式、用户模式或用户视图,是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是与某一应用有关的数据的逻辑表示。

10.“年龄在15至30岁之间”这种约束属于DBMS 的( )功能。

A. 恢复

B. 并发控制

C. 完整性

D. 安全性

【答案】C

【解析】“年龄在15至30岁之间”是完整性约束中值的约束。

二、简答题

11.登记日志文件时为什么必须先写日志文件,后写数据库?

【答案】把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。

如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次UNDO 操作,并不会影响数据