第1章关系数据库原理
【课后习题】
一、填空题
1.数据库系统各类用户对表的各种操作请求(数据定义、查询、更新及各种控制)都是由一个复杂的软件来完成的,这个软件叫做__ DBMS(数据库管理系统)__。
2.DBMS(数据库管理系统)通常提供授权功能来控制不同的用户访问数据库中数据的权限,其目的是为了数据库的___安全性__。
3.在概念模型中,通常用实体联系图表示数据的结构,其三个主要的元素是__实体、属性、联系__。
4.学校中有若干个系和若干个教师,每个教师只能属于一个系,一个系可以有多名教师,系与教师的联系类型是__1:N __。
5.数据库系统中所支持的主要逻辑数据模型有层次模型、关系模型、__网状模型____和面向对象的模型。
6.联系两个表的关键字称为___外键___。
7.关系中主码的取值必须唯一且非空,这条规则是___实体___完整性规则。
8.关系模式是对关系结构的定义,是对关系__型___的描述。
9.对于1:1的联系,___每个实体的码_____均是该联系关系的候选键。
10.对于1:N的联系,关系的键是__ N端实体的码____。
11.对于M:N的联系,关系的键是___诸实体码的组合___。
12.关系完整性约束包括__实体__完整性、参照完整性和用户自定义完整性。
二、选择题
1.数据库管理技术的发展阶段不包括(D)。
A.数据库系统管理阶段B.人工管理阶段
C.文件系统管理阶段D.操作系统管理阶段
2.数据处理进入数据库系统阶段,以下哪个不是这一阶段的优点(B)。
A.有很高的数据独立性B.数据不能共享
C.数据整体结构化D.有完备的数据控制功能3.用于定义、撤销和修改数据库对象的语言是(A)。
A.DDL B.DM C.DC D.DEL 4.数据库系统的出现使信息系统以(A )为中心。
A.数据库B.用户C.软件D.硬件5.在现实世界中,事物的一般特性在信息世界中称为(C)。
A.实体B.实体键C.属性D.关系键6.实体联系图(ER图)是(  B )。
A.现实世界到信息世界的抽象B.描述信息世界的数据模型
C.对现实世界的描述D.描述机器世界的数据模型7.关系模型的数据结构是(D)。
A树B.图C.表D.二维表8.关系R和S进行自然连接时,要求R和S含有一个或多个公共(D)。
A.元组B.行C.记录D.属性9.设属性A是关系R的主属性,则属性A不能取空值,这是(A)。
A.实体完整性规则B.参照完整性规则
C.用户自定义完整性规则D.域完整性规则
三、简答题
1.什么是数据、数据库、数据库管理系统、数据库系统?
解答:数据是数据库中存储的基本对象。数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库管理系统是位于用户与操作系统之间的一层数据管理软件。数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及开发工具)、应用系统、数据库管理员和用户构成。
2.数据库系统有哪些特点?
解答:数据库系统的特点有:数据结构化、数据的共享性高,冗余度低,易扩充、数据独立性高、数据由DBMS统一管理和控制。
3.数据库管理系统的主要功能有哪些?
解答:数据库管理系统的主要功能有:数据定义功能、数据操纵功能、数据库的运行管理、数据库的建立和维护功能。
4.在关系代数中,等值条件连接和自然连接的区别是什么?
解答:等值连接是把两个表中的行按照给定的等值条件进行拼接而形成新表,结果列为参与连接的两个表的所有列。自然连接是一种特殊的等值连接,要求参与连接的两个表有共同属性(列),其结果是在参与操作的两个表的共同属性上进行等值条件连接后,再去除重复的属性后所得的新表。
5.试述关系模型的完整性规则。在参照完整性中,为什么外键属性的值也可以为空?什么情况下才可以为空?
解答:关系的完整性规则包括实体完整性、域完整性和参照完整性三个方面。实体完整性用于保证数据库表中的每一个元组都是唯一的,要求在任何关系的任何一个元组中,主键的值不能为空
值、也不能取重复的值。域完整性用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内,要求由用户根据实际情况,定义表中属性的取值范围。参照完整性用于确保相关联的表间的数据保持一致,要求“不引用不存在的实体”,即:不允许在一个关系中引用另一个关系中不存在的元组。
例如:主表:学生(学号,姓名,性别,专业号,年龄)
从表:专业(专业号,专业名)
主表的“专业号(外键)”的取值只能为两种情况:若取非空值,则它必须是从表中存在的值;取空值(null),表明尚未给学生分配专业,null不等于0或空字符串。
6.什么是关系规范化?关系规范化的目的是什么?关系规范化的基本方法是什么?第一范式至BCNF,它们之间的关系是什么?
解答:一个低一级范式的关系模式,通过分解可以转换为若干个高一级范式的关系模式,这种过程称为关系的规范化。
关系的规范化主要目的是解决数据库中数据冗余、插入异常、删除异常和更新异常等数据存储问题。
关系规范化的基本方法是逐步消除关系模式中不合适的数据依赖,使关系模式达到某种程度的分离,也就是说,不要将若干事物混在一起,而要彼此分开,用一个关系表示一事或一物,所以,规范化的过程也被认为是“单一化”的过程。
从第一范式至BCNF,它们之间的关系是BCNF⊆3NF⊆2NF⊆1NF。从第一范式到第二范式,消除了非主属性对码的部分函数依赖;从第二范式到第三范式,消除了非主属性对码的传递函数依赖;从第三范式到BCNF,消除了关系中冗余的码。
四、设计题
1.试给出三个实际情况的E-R图,要求实体之间具有一对一、一对多、多对多各种不同的联系。
2.某学院有若干系,每个系有若干班级和教研室,每个教研室有若干教师,每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。请用E-R图画出该学院的概念模型。
3.某商品销售公司有若干销售部门,每个销售部门有若干员工,销售多种商品,所有商品由一个厂家提供,设计该公司销售系统的E-R模型,并将其转换为关系模式。
4.设关系模式SCT(学号,课程号,成绩,教师名,教师地址)。如果规定:每个学生每学一门课程只有一个成绩;每门课只有一个教师任教;每个教师只有一个地址(无同名教师)。
(1)写出关系模式SCT的基本函数依赖集。
(2)出关系模式SCT的候选键。
(3)试把SCT分解成2NF模式集,并说明理由。
(4)试把SCT分解成3NF模式集,并说明理由。
解答:
sql软件是什么软件1.
班级
班长
班级--班长
1
1
1:1的E-R 图
学生
班级
组成
1
m
1:n 的E-R 图
课程
学生
选修
m
n
m :n 的E-R 图
2.
学校
系教师
课程
学生教研室
班级
拥有1n 拥有
属于
属于指导
选修指导
1
n
1
n n m
1
n
n
m
1n
编号
名称
性别
姓名
学号
代码
名称
校代码
校址
校名门牌号
名称编号
专业
职称
年龄
年龄
性别
姓名
教师号
教材
学分
课程名
课程号
3.
公司(公司代码,公司名,地址)
部门(部门代码,部门名)
员工(员工代码,姓名,性别,年龄,职务)
商品(商品代码,商品名,单价,数量)
厂家(厂家代码,厂家名,地址)
拥有(公司代码,部门代码)
属于(部门代码,员工代码)
销售(员工代码,商品代码,销售量)
供货(商品代码,厂家代码)
4.
(1)基本的函数依赖有:(商店编号+商品编号)→部门编号,(商店编号+部门编号)→负责人,(商店编号+商品编号)→数量
(2)由题意,上面的函数依赖可知商店编号是主属性,商品编号也是主属性,由这两个属性,可以确定关系元组的所有属性,所以R的候选码是:商店编号+商品编号
(3)R(商店编号,商品编号,数量,部门编号,负责人)最高已达到2NF。因为负责人是码的传递依赖。
(4)要达到3NF,必须消除非主属性对码的传递依赖。对R分解后的两个模式如下:
R1(商店编号,商品编号,数量,部门编号)
R2(部门编号,负责人)