数据库原理及应用复习题及参考答案 2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据库原理及应用》复习题及参考答案
一、判断题
1.采用规范的方法,使分解后的模式属于第二或第三范式,只能保证无损连接,不能绝对保持依赖。
(×)
2.原则上,两个不同的对象所具有的属性值不能相同,但在给定关系中的元组可以是完全相同的。
(×)
3.概念设计可以独立于数据库管理系统。
(√)
4.执行查询语句时DBMS从数据字典中调出相应的模式描述,并从外模式映像到内模式,从而确定所需要的物理数据。
(×)
5.在视图中插入一个元组,该元组会同时插入到基本表中。
(√)
6.对象查询语言中,可以用运算符ELEMENT从多个元素的聚集中提取单个元素。
(×)
7.对于表只能有惟一的主键码,但可有任意数量的UNIQUE属性或属性集。
(√)8.如果一个关系没有一个属性能由所有其他属性函数决定,则该关系根本不存在非平凡函数依赖。
(√)
9.超类可以自动继承子类的所有特性。
(×)
10.两段锁协议是使并发操作可串行化调度的必要条件。
(×)
二、选择题
1.实体联系模型属于( D )。
A. 层次模型
B. 网状模型
C. 关系模型 D 概念模型
2.在一个关系中,任意两个元组的值( C )。
A. 可以全同
B. 必须全同
C. 不能全同
D. 以上都不是
3.关系R和S进行自然连接时,要求R和S含有一个或多个公共( B )
A. 行
B. 属性
C. 记录
D.元组
4.SQL是( C )的缩写.
A. Standard Query Language
B. Select Query Language
C. Structured Query Language
D. 以上都不是
5.当两个子查询的结果( C )时,可以执行并、交、差操作。
A.结构完全不一致时
B.结构部分一致
C.结构完全一致时
D.主键一致
6.在数据库设计中,当合并局部E---R图时,职工在某一局部应用中被除数当作实体,而在另一局部应用中被除数当作属性,那么被称之为( A )冲突。
A.结构
B.命名
C.联系
D.属性
7.在关系中的各元组的( B )。
A.顺序不能任意排列,一定要按照输入的顺序排列
B.顺序可以任意排列
C.顺序一定要按照关键字段值的顺序排列
D.排列顺序不同,统计处理的结果就可能不同。
8.SQL中创建基本表应使用( C )语句。
A.CREATE VIEW
B.CREATE DATABASE
C.CREATE TABLE
D.CREATE FORM
9.与WHERE 年龄 BETWEEN 32 AND 45 语句等价的子句是( D )。
A. WHERE年龄 >32 AND年龄<45
B. WHERE年龄>=32 AND年龄<45
C. WHERE年龄>32 AND年龄<=45
D. WHERE年龄>=32 AND年龄<=45 10.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,职员与部门的联系类型是( C )。
A. m : n
B. 1 : n
C. n : 1
D. 1 : 1
11.在数据库的三级模式结构中,内模式有( A )。
A.1个 B.2个 C.三个 D.任意多个
12.下述那一条不属于概念模型应具备的性质( D )。
A.有丰富的语义表达能力 B.易于交流和理解
C.易于变动 D.在计算机中实现的效率高
13.用二维表结构表示实体以及实体间联系的数据模型称为( C )。
A.网状模型 B.层次模型 C.关系模型 D.面向对象模型14.使用CREATE VIEW语句建立的是( C )。
A.数抿库
B.表
C.视图
D.索引
15.元组关系演算表达式{t R(t) ∧ S(t)}表达的是( D )。
A. R S
B. R S
C. R-S
D. S-R
16.如果一个关系R中的所有非主属性都完全函数依赖于键码,则称关系R属于( A )。
A. 2NF
B. 3NF
C. 4NF
D. BCNF
17.数据库系统的基础是( D )。
A.数据结构
B.数据库管理系统
C.操作系统
D.数据模型18.一个学生可以同时借阅多本图书,一本图书只能借给一个学生,学生和图书之间的联系为( B )的联系。
A.一对一
B.一对多
C.多对多
D.多对一
19.在演员类Actor中增加与电影类Movie之间的演员在电影中扮演角色的联系,一个演员可以扮演多个角色,一部电影有多个演员出演。
下述语句中关于联系的描述正确的是( A )。
A.可以在Actor的类说明中加入:relationship Set<Movie> movies
B.可以在Actor的类说明中加入:relationship Set<Actor> actors
C.可以在Movie的类说明中加入relationship Set<Actor> movies
D.可以在Movie的类说明中加入:relationship Set<Movie> movies
20.下面对触发程序中规定动作与触发事件之间的关系描述错误的是( B )。
A. AFTER触发事件完成后,如果WHEN子句中的条件为真,则执行随后的动作
B. BEFORE触发事件执行以后,测试WHEN子句中的条件,若为真,则执行随后的动作
C. INSTEAD OF:触发事件发生时,如WHEN子句中的条件为真,就执行随后动作
D.使用BEFORE的情况下,无论条件真假,都执行触发事件
三、填空题
1.数据在空间上的传递称为(通信);在时间上的传递称为(存储)。
2.DBS由(硬件系统)、(数据库集合)、(数据库管理系统及相关软件)、(数据库管理)、(用户)五部分组成.,其中(数据库管理系统)是数据库系统的核心组成部分。
3.SQL语言的功能包括(数据查询)、(数据定义)、(数据操纵)、(数据控制)。
4.数据库管理员利用(Grant )语句将对某类数据的操作权限赋于用户;用(revoke)语句收回用户对某类数据的操作权限。
5.X―>A1,A2,…,An成立的充要条件是(x A i(I=1,2,…,n) )。
6.信息系统分为(数据处理系统(EDP)、(管理信息系统(MIS)、(决策支持系统(DSS))三类。
7.一个关系进行分解时必须考虑两个问题是(无损联接性)、保持函数依赖)。
8.数据操作描述的是系统的动态特性,主要分为(更新)和(检索)两大类,共包括(插入(增加))、(删除)、(修改)和(查询)4种操作。
9.在SQL中表示并集的关键字是(UNION)。
10.数据逻辑:P(a,b,c,d) S(a,b,c) AND (c,d)表达的关系运算是(自然连
接)。
11.对象查询语言中,可以使用(FOR ALL)和(EXISTS)两种量词表达式。
12.如果对并发操作不进行合理的调度,可能导致的3种数据不一致性是(丢失修改)、(读脏数据)和(不可重复读)。
四、名词解释
1.DB:是长期存储在计算机内、有组织的、可共享的数据集合.或DB通用化的相关数据的集合,它不仅包括数据本身,而且包括数据之间的联系。
2.关系模型:是用二维表的形式来表示实体和实体间联系的数据模型。
3.函数依赖:用U表示属性集的全集{A1,A2,…,An},设R(U)是属性集U上的关系模式.X,Y是U的子集,若对于X的每一个具体值,Y都有唯一的具体值与之对应,则称Y函数依赖于X,或X函数决定于Y,记作X->Y, X为决定因素。
4.候选关键字(注:用函数依赖来描述):候选关键字(注:用函数依赖来描述)在关系模式R(U)中,K是U中的属性或属性组。
如果K-- f R,则称K为R(U)的一个候选关键字。
5.DBMS:DBMS是为数据库的建立、使用和维护而配置的软件,它是数据库系统的核心组成部分。
五、简答题
1.关系运算有哪几种类型,都包括哪些?
答:有两大类,一是传统的集合运算,包括并、交、差等;二是专门的关系运算,包括选择、投影、连接等。
2.数据与信息的区别和联系。
答:(1)数据是由DBS研究和处理的对象。
数据和信息是分不开的,它们既有联系又有区别。
(2)所谓数据,通常是指用符号记录下来的,可以识别的信息。
(3)信息和数据之间存在着固有的联系:数据是信息的符号表示或称为载
体;信息则是数据的内涵,是对数据语义的解释。
3.数据库设计分为几个阶段,各阶段的任务是什么?
答:数据库设计分为三大阶段,分别是概念结构设计、逻辑结构设计和物理结构设计。
概念结构设计阶段的任务是:产生反映全组织信息需求的整体数据库概念结构,即概念模式。
逻辑结构设计阶段的任务是:将概念结构转换成
特定DBMS所支持的数据模型的过程。
物理结构设计阶段的任务是:为了有效地实现逻辑模式,确定所采用的存储策略。
1.什么是关系模型?
答:数据以关系的形式,也就是以二维表的形式表示,其数据模型就是所谓的关系模型。
2.概述查询优化的策略。
答:查询优化策略主要包括。
一元选择首先做,投影、选择同时做,乘积、选择合并做,索引、排序预先做。
3.为什么在数据库设计阶段不直接用关系模型,而首先用ODL或E-R图进行设计?
答:因为关系模型中只有单一的概念——关系,没有其他的辅助概念,例如ODL 中的类和联系,E-R图中的实体集和联系等,所以在数据库设计阶段用关系模型不如用ODL或E-R图来得方便和直观。
六、综合题
1.假设学生——课程数据库关系模式如下:
S(Sno,Sname,Sage,Ssex)
C(Cno,Cname,Teacher)
SC(Sno,Cno,Grade)
用SQL语句表达下列查询:
(1)找出刘老师所授课程的课程号和课程名;
SELECT Cno,Cname
FROM C
WHERE Teacher LIKE‘刘%’;
(2)找出年龄小于22岁的女学生的学号和姓名。
SELECT Sno,Sname
FROM S
WHERE Sage 22 AND Ssex=‘F'
1.用SQL的有关语句定义:
(1)学生关系Student,包括学号Sno、姓名SN、年龄SA;
CREATE TABLE Student(
Sno INT PRIMARY KEY
SN CHAR(30),
SA INT
);
(2)课程关系Course,包括课程号Cno、课程名CN、任课教师CT;
CREATE TABLE Course(
Cno INT PRIMARY KEY,
CN CNAR(30),
CT CHAR(30)
);
(3)学生选课关系SC,包括Sno,Cno和成绩G。
CREATE TABLE SC(
Sno INT,
Cno INT,
G INT,
PRIMARY KEY(Sno,Cno),
FOREIGN KEY(Sno)REFERENCES Student(Sno),
FOREIGN KEY(Cno)REFERENCES Course(Cno)
);
2.按题1的学生关系模式,用SQL的有关语句。
(1)授予赵华对学生关系Student的插入和修改权限;
GRANT INSERT,UPDATE ON Student TO‘赵华’;
(2)插入任意3个学生的完整信息;
INSERT INTO Student
(TABLE (01001,‘赵华’,19),
(01002,‘李芳’,18),
(01003,‘刘红’,20),
);
(3)修改所有学生的年龄。
UPDATE Student
SET SA=SA+1;
3.结合题1定义的学生选课数据库,用SQL语句查询学生数据库课程的成绩,输出学生姓名和成绩,按成绩排序(降序);若成绩相同,再按学号排序(升序)。
SELECT SN,G
FROM Student,Course,SC
WHERE Student. Sno=SC.Sno AND Course. Cno=o
AND Course. CN=‘数据库’
ORDER BY G DESC,Sno;。