数据库原理 2012年复习(题目和答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库原理复习要点
一、选择、填空题(共40分)
1、数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)之间的关系是(DBS
包括DB和DBMS)
2、用树形结构表示实体之间联系的模型是(层次模型)
3、在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发
控制、故障恢复等功能的是(交互式命令或自主型语言)(宿主型语言)
4、下列有关数据库的描述,正确的是(C. 数据库是一个结构化的数据集合
C.关系中的每一列称为元组,一个元组就是一个字段)
5、设有如下关系表,则下列操作中正确的是()
6、关系数据管理系统能实现的专门关系运算包括(选择、投影、连接
)
7、一个关系只有一个(基本表)
8、设有关系模式R和S,下列各关系代数表达是不正确的是(D)R∩S=S-(R-S))
9、在SQL的SELECT语句中,能实现的投影操作的是(SELECT)
10、修改数据表结构应使用的SQL命令是(ALTER TABLE)
11、在最小函数依赖集F中,下面叙述不正确的是(B)F中的每个函数依赖的左部都是
单属性)
12、在关系模式R中,函数依赖X→Y的语义是(在R的每一关系中,若两个元组的X值相等,则Y值也相等)
13、视图机制提高了数据库系统的(安全性)
14、完整性控制的防范对象是()
15、后援副本的作用是(介质故障)
16、设计子模式属于数据库设计的(逻辑设计)
17、(数据流图)表达了数据和处理过程的关系
18、E-R图的基本成分不包含(C.元组)【基本成分有实体,属性和联系】
19、声明了变量:DECLARE@i int,@c char(4),现在为@i赋值10,为@c赋值’abcd’,正确的语句是( A.SET@i=10,@c=’abcd’; C.SELECT@i=10,@c=’abcd’ )
20、当一下代码中的【】位置分别为BREAK,CONTINUE或RETURN时,输出的值为(1,0不输出)
21、对现实世界进行第一层抽象的模型,称为(概念模型)
22、层次模型的数据结构是(树)结构。
23、在关系代数运算中,传统的集合运算有(并,差,交,笛卡尔积)
24、实体完整性规则是对(主键)的约束。
25、SQL的功能包括数据查询、数据操纵和(数据定义,数据控制)四个部分。
26、消除了非主属性对候选键的部分函数依赖的关系模式,称为(2NF模式);
27、DBMS对数据库的安全保护功能是通过安全性控制、完整性控制、(并发性控制和数据库恢复)四方面实现的。
28、实现并发控制的方法主要是(封锁)技术。
29、无论是存储过程还是触发器,都是(SQL语句和流程控制)语句的集合。
30、对现实世界进行第二层抽象的模型,称为(结构模型)。
31、网状模型的数据结构是(有向图)结构。
32、专门的关系运算有(选择,投影,连接)。
33、参照完整性规则是对(外键)的约束。
34、消除了每属性对候选键的传递函数依赖的关系模式,称为(BCNF模式)。
35、在SQL Server 2000中有简单还原和(完全还原、批日志还原)3种数据库还原模式。
二、问答题(共20分)
1、数据库管理系统(DBMS)主要功能具体包括哪些?(P5)
答:其主要功能有数据定义和创建;分类组织、存储和管理各种数据;数据存取;数据库的事务管理和运行管理;数据库的建立和维护。
2、在关系数据库理论中,1NF、2NF、3NF、BCNF、4NF的定义是什么?
答:1NF的定义:如果关系模式R中不包含多值属性,则R满足第一范式(First Normal Form),记作:R∈1NF。
2NF的定义:如果一个关系R∈1NF,且它的所有非主属性都完全函数依赖于R的任一候选码,则R属于第二范式,记作:R∈2NF。
3 NF的定义:如果关系模式R∈2NF,且它的每一个非主属性都不传递依赖于任何候选码,则称R是第三范式,记作:R∈3NF。
BCNF的定义:设关系模式R(U,F)∈1NF,若F的任一函数依赖X→Y(Y X)中X都包含了R的一个码,则称R∈BCNF。
4 NF的定义:如果关系模式R∈1NF,对于R的每个非平凡的多值依赖X→→Y(Y X),X含有码,则称R是第四范式,即R∈4NF。
三、综合题(共40分)
设有四个表示教学管理事务的基本表S(学生),C(课程),SC(选课),T(教师),结构如下图所示。
S
C
(一)用关系代数表达式表示下列查询要求(共6分)。
(1)查询工资高于1000元、职务津贴低于400元的教师。
(2)查询讲授C2课程的教师号。
(3)查询年龄大于19岁的同学的学号、姓名、系别。
(4)查询“王力“老师所授课程的课程号、课程名。
(5)查询选修了课程号为C1和C2的学生的姓名。
(二)用SQL 语言表示下列查询要求(共6分)。
(1)创建S 表,S#为主键,SN 不能为空。
(2)检索计算机系年龄在20岁以上的学生学号。
(3)检索选修总收入超过1000元的教师所讲课程的学生学号、课程号和成绩。
(4)检索选修和张三同学所选课程中任意一门相同的学生姓名,课程名。
(5)S1同学选修了C3,将此信息插入SC 表中。
(三)根据上述四个基本表的情况,画出该教学管理系统中有关信息的E-R 图。(共10分)
(四)用嵌入式SQL 的方式编程实现在C 语言程序中显示某个系的学生记录的功能,并要在编程时添加必要的注释。(共18分)
(以下程序有小毛病,仅供参考)
EXEC SQL BEGIN DEC LARE SECTION; /*主变量说明开始*/
char deptname[64];
char HSno[64];
char HSname[64];
char HSsex[64];
int HSage;
int NEW AGE;
n 教师 学生
讲授
选修 课程 m
n m
学号
姓名
年龄 所在系 成绩
课程号 课程名
教师号 姓名 工资
津贴