数据库系统原理 复习题
一、单项选择题
1.数据库技术的奠基人之一E.F.Codd从1970年起发表过多篇论文,主要论述的是 。
A. 层次数据库 B. 网状数据模型 C. 关系数据库 D. 面向对象数据库
2.数据库系统的数据独立性是指 。
A. 不会因为数据的变化而影响应用程序
B. 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用
程序
C. 不会因为数据存储策略的变化而影响数据存储结构的变化 D. 不会因为某些存储结构的变化而影响其他的存储结构变化
3.关系运算中花费时间可能最长的运算是 。
A. 投影 B. 选择 C. 笛卡儿积 D. 除 4.同一个关系中的任意两个元组的值 。
A. 可以全同 B. 不能全同 C. 可以都为空值 D. 以上都不是
5. 等值连接运算与自然连接运算是 。
A. 不同的 B. 相同的 C. 等价的 D. 有时相同 6.下述SQL语句中,起修改表中数据作用的命令动词是 。 A. ALTER B. CREATE C. UPDATE D. INSERT
7.规范化过程主要克服数据库逻辑结构中的更新异常和 的缺陷。
A. 结构不合理 B. 冗余度大 C. 数据丢失 D. 数据不一致性 8.对于关系数据库,任何二元关系模式都可以达到 范式。 A. 1NF B. 2NF C. 3NF D. 4NF 9.候选关键字中的属性称为 。
A. 关键属性 B. 主属性 C. 候选属性 D. 复合属性 10.后援副本的用途是[ ]
A. 数据的转储 B. 一致性控制 C. 安全性保障 D. 故障后的恢复
11.E-R模型属于数据库的 ________ A.概念模型 B.逻辑模型
C.内部模型 D.外部模型
12.将E-R模型转换成关系模型的过程属于数据库的 ________
A.需求分析 B. 概念设计 C.逻辑设计 D. 物理设计
13.下列关于E-R模型的说法中,正确的是 ________
A.依赖于计算机硬件和DBMS
B.独立于计算机硬件,依赖于DBMS C.独立于计算机硬件和DBMS
D.依赖于计算机硬件,独立于DBMS
14.在数据库技术中,独立于计算机系统的模型是 ________
A.E-R模型 B.层次模型 C.关系模型 D.面向对象的模型
15.数据库在磁盘上的基本组织形式是 ________ A.网状表 B.文件
C.二维表 D.系统目录
二、填空题
1.设有关系R(A,B,C,D),S(D,E,F,G)。关系R的主键为A,关系S的主键为D,则属性D在关系R中称为 外码 。
2.若关系是1NF,且每一个非主属性都 完全函数依赖码 ,则称该关系属于2NF。
3. 有两种基本类型的锁,它们是 排他型锁 、 共享锁 。
4.若R属于1NF,且不存在非主属性对码的传递依赖,则R属于 3NF 。 5.在概念设计阶段,最常使用的数据模型是E_R 。 6.当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是 。 7. 事务 是DBMS的基本单位,它是构成单一逻辑工作单元的操作集合。 8.事务的持续性是指 一个事务一旦完成操作后,它对数据库的所有更新应永久地反映在数据库中,不会丢失 。
9.解决并发操作带来的数据不一致性问题,一般采用 加锁 方法。 10.SQL Server规定了2种角色类型:服务器角色和___数据库角色_______ 11. SQL Server索引分为__唯一索引________、主索引、普通索引、聚集索引四类。
12. 面向对象数据库是面向对象技术和___数据库技术_______相结合的产物。 13. PB系统默认的库扩展名是__.pbl__。
14. DBMS可分为层次型、网状型、_____关系____型、面向对象型等四种类型。 15在数据库的概念设计中,客观存在并且可以相互区别的事物称为___实体_______。
16.SQL Server规定了2种角色类型:服务器角色和___数据库角色_ _______ 18. 面向对象数据库是数据库技术和____数据库技术________相结合的产物。 19. SQL语言中,向数据库表中插入数据的命令是__insert______。
20. DBMS可分为层次型、网状型、___关系_____型、面向对象型等四种类型。 21在数据库的概念设计中,客观存在并且可以相互区别的事物称为____实体______。
22. 数据库三级模式中,用户与数据库系统的接口是__外________模式。
三、简答题
1、什么是数据库系统的数据独立性? 有哪两级?
有关系模式R (A,B,C,D),F是R上成立的FD集,F = {B→C,B→D},试写出关系模式R的候选键,并说明理由。 答:数据库系统的数据独立性: 数据独立性是指应用程序和数据库的数据结构之间相互
独立,不受影响。数据独立性分成物理独立性和逻辑独立性两个级别。
R的候选键是:AB ,因为B的闭包是BCD,在函数依赖中没有A,所以候选码以包含A
2、简述DBMS的主要功能
答:DBMS的查询处理器可分成四个成分:
1)数据库的定义功能 2)数据库的操纵功能 3)数据库的保护功能 4)数据库的维护功能 5)数据字典
3、什么是活锁?什么是死锁?在事务调度中,如何预防和解决死锁?
答:活锁如果事务T1锁定了数据库对象A,事务T2又请求已被事务T1锁定的对象A,
但失败且需要等待,此时事务T3也请求已被事务T1锁定的对象A,也失败且需要等待。当事务T1释放对象A上的锁时,系统批准了事务T3的请求,使得事务T2继续等待,此时事务T4请求已被事务T3锁定的对象A,但失败且需要等待。当事务T3释放对象A上的锁时,系统批准了事务T4的请求,使得事务T2依然等待….这就有可能使事务T2总是在等待而无法锁定对象A,但总是还是有锁定对象A的希望的。这就是活锁的情况。
死锁:有两个或以上的事务处于等待状态,每个事务都在等待另一个事务解除封锁, 它才能继续执行下去,结果任何一个事务都无法执行,这种现象就是死锁。
预防死锁: 预防死锁的方法:1.一次锁定法所,顺序封锁法,死锁的解除:超时法,等待图法
4、什么是日志文件?在数据恢复中,为什么要建立日志文件?
日志文件:记录数据的修改操作,其中的每条日志记录或者记录所执行的逻辑操作,
或者记录已修改数据的前像和后像。前像是操作执行前的数据复本;后像是操作执行后的数据复本。建立日志文件的优点:1.可以处理历史数据 2.不会受防
火墙阻隔 3.可以追踪带宽或下载完成 4.可以追踪搜索引擎蜘蛛 5.可以追踪移动用户
5.POWER BUILDER中事务对象有何作用?
PowerBuider的事务对象是应用程序与数据库之间进行通信的桥梁,在应用程序初启时,系统自动创一个为SQLCA(SQL Communication Area, SQL通讯区)的全局事务对象,该对象在应用程序的任何地方都可以访问,应用程序与数据库的所有通信都需要通过事务对象来完成,除了直接使用系统的缺省事务对SQLCA外,开发人员也可以创建自己的事务对象。事务对象在POWER BUILDER 当中占有非常重要的地位,POWER BUILDER的应用程序必须通过事务对象来实现与各种数据库的连接。
6.SQL Server数据库存储过程优点是什么?
SQL Server数据库存储过程有以下的优点:(1)存储过程的能力大大增强了SQL语言的功
能和灵活性。存储过程可以用流控制语句编写,有很强的灵活性,可以完成复杂的判断和较复杂的 运算。(2)可保证数据的安全性和完整性。(3)通过存储过程可以使没有权限的用户在控制之下间接地存取数据库,从而保证数据的安全。 (4) 通过存储过程可以使相关的动作
在一起发生,从而可以维护数据库的完整性。(5) 再运行存储过程前,数据库已对其进行了语法和句法分析,并给出了优化执行方案。(6) 可以降低网络的通信量。
7. 简要说明什么是DML
答:DML是数据操作语言,从功能是分为数据操作和数据查询两大类,数据操作则使用insert update delete 而查询可通过select,from where等子句来查询数据
8. 什么是视图,视图有什么作用
答:视图是从若干基本表和其他视图构造出来的表。视图的作用:(1)视图能够简化用户的操作(2)视图使用户能以多种角度看待同一数据(3)视图对重构数据库提供了一定程序的逻辑独立性(4)视图能够对机密数据提供安全保护(5)适当的利用视图可以更清晰的表达查询 四、应用题
用SQL完成以下操作
建立学生表(学号,姓名, 性别 ,年龄,年级,系编号),主码为学号,性别为‘男’或‘女’。
Create table 学生表(学号 char(5) primary key, 姓名 char(10) 性别 char(1), 年龄 smallint, 年级 smallint, 系编号 char(5)) check 性别=’男’or 性别=’女’ 统计学生总人数。
select count(sno) as 总人数 from 学生表
将学生张三从编号为001的系转到编号为002的系。
update 学生表 set 系编号=’002’where 姓名=’张三’
五、设计题
设有系、教师、学生、课程等实体,其中每一个系包括系名、系址、系主任姓名、办公电话等属性,教师实体包括工作证号码、教师名、出生日期、党派等属性。学生实体包括学号、姓名、出生日期、性别等属性。课程实体包括课程号、课程名、预修课号等属性。设一个系可以有多名教师,每个教师教多门课程, 一门课程由一个教师教。其中有的教师指导多个研究生。每一个学生可选多门课程,每门课程只有一个预修课程,每一个学生选修一门课程有一个成绩,试根据以上语义完成下述要求。 1、画出E-R图。
2、将以上的实体及实体集间的联系用关系模型表示出来
3、写出各关系模式中的函数依赖集 4、 写出各关系的关键字。
5、 写出各关系模式的规范化级别。
6、 所有的关系模式的规范化级别都达到3NF了吗?若没有达到请将其
分解以达到3NF。
04735数据库系统原理复习题



