一、客观题
1.数据库的概念模型独立于▁▁。
A) 具体的机器和DBMS
B) E—R图
C) 信息世界
D) 现实世界
2.在关系数据中,视图(view)是三级模式结构中的
A) 内模式
B) 模式
C) 存储模式
D) 外模式
3.下面对于关系的叙述中,哪个是不正确的?
A) 关系中的每个属性是不可分解的
B) 在关系中元组的顺序是无关紧要的
C) 任意的一个二维表都是一个关系
D) 每一个关系只有一种记录类型
4.在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建
A)另一个表(table)
B)游标(cursor)
C)视图(view)
D)索引(index)
5.在关系数据库设计中,设计视图(view)是哪个阶段的内容?
A)需求分析
B)概念设计
C)逻辑设计
D)物理设计
6.对于现实世界中事物的特征,在实体-联系模型中使用
A)属性描述
B)关键字描述
C)二维表格描述
D)实体描述
7.为了设置两个表之间的数据参照完整性,要求这两个表是
A) 同一个数据库中的两个表
B) 两个自由表
C)一个自由表和一个数据库表
D)没有限制
8.如果在一个关系中,存在多个属性(或属性组)都能用来惟一标识该关系的元组,且其任何子集都不具有这一特性。这些属性(或属性组)都被称为该关系的
A) 候选码
B) 主码
C) 外码
D) 连接码
9.在创建数据库表结构时,为该表指定了主索引,这属于数据完整性中的
A) 参照完整性
B) 实体完整性
C) 域完整性
D)用户定义完整性
10.关系数据模型中表和表之间的数据联系是通过以下哪项来实现的?
A )主码
B )指针
C )外码
D )链表
11.数据库管理系统通过数据定义语言(DDL)定义数据的模式、外模式和内模式,存放于
A). 封锁表
B). 数据字典
C). 索引
D). 日志
12.设关系模式R(ABCDE)上的函数依赖集F={A→BC,BCD→E,B→D,A→D,E→A},将R分解成两个关系模式:R1=(ABD),R2=(ACE),则R1和R2的最高范式分别是▁▁。
A). 2NF和3NF
B). 3NF和2NF
C). 2NF和BCNF
D). 3NF和BCNF
13.在数据库三级模式间引入二级映像的主要作用是
A). 提高数据的独立性
B) 提高程序的安全性
C). 保持数据的一致性
D). 提高程序的可移植性
14.下面哪种修改会提高OLTP类型系统性能?
A). 每执行一条语句连接一次数据库
B) 用绑定变量代替SQL语句中的硬编码常量
C). 减少日志文件大小
D). 利用触发器检查约束代替数据库中约束声明
15.哪个是性能优化目标?A) 用尽量多的内存
B). 提高缓冲命中率到99%以上
C). 所有查询都用索引,不用全表扫描
D). 减少逻辑IO次数
16.哪个是事务commit不需要做的?
A) 把内存中所有修改过的数据块写回数据文件
B) 把事务日志写回日志文件
C). 释放事务持有的锁等资源
D) 返回用户提交完成
17.哪条语句能删除STUDENT所有的记录,但是能保留表结构.
A). DROP TABLE student;
B). TRUNCATE TABLE student;
C). DELETE * FROM student;
D). TRUNCATE TABLE student KEEP STRUCTURE;
E). DELETE * FROM student KEEP STRUCTURE.
18.看下面的sql语句: __________
SELECT employee.ename
FROM employee
WHERE employee.empno NOT IN
(SELECT manager.mgr
FROM emp manager);
下面哪个操作跟上面sql语句中的 not in 操作等价?A). !=
B). ALL
C). !=ALL.
D). NOT LIKE.
19.同一个数据库中环境完全相同,2个结构和数据完全相同的表,在id列上都建立相同索引并收集了统计信息,表记录顺序不同,一个表按id排序插入,一个随机插入,为什么下面查询一个会使用索引一个用全表扫描? __________select * from t where id < 500;A) 索引总比全表有效,数据库bug
B). 数据库随机选择执行路径,执行时间不同执行路径也可能不同,跟表数据无关
C). 优化器根据代价计算取最佳执行路径,随机插入的表用索引的代价比全表扫描高
D). 优化器难免会出错,用手工加提示强制使用索引
20.已知表T1、T2,其中T1表有1000行数据,T2表有100万行数据,对于下面的查
询语句select * from T1, T2 where t1.a = T2.a;其中T1,T2采用何种连接方法,查询效率比较优____询语句select * from T1, T2 where t1.a = T2.a;其中T1,T2采用何种连接方法,查询效率比较优___________A). 采用嵌套循环(NestLoop)连接,连接顺序T1,T2
B) 采用嵌套循环(NestLoop)连接,连接顺序T2,T1
C). 采用归并连接(MergeJoin)
D). 采用哈希连接(HashJoin)
二、主观题
论述与设计题
数据库应用中经常会遇到自增长列的这种需求,现有的主流数据库对这个需求的实现方法也各不相同。请在oracle、SQL SERVER、DB2、mysql或是其他任何您所熟悉的数据库软件中选择一种或几种,给出其实现方式。