当前位置:文档之家› 数据库原理及应用第3章课后习题答案知识分享

数据库原理及应用第3章课后习题答案知识分享

数据库原理及应用第3章课后习题答案
习题3
1.试述关系模型的3个组成部分。

1)数据结构
关系模型的数据结构非常简单,只包括单一的数据结构——关系。

从用户角度,关系模型中数据的逻辑结构是一张扁平的二维表。

2)数据操作
关系操作采用集合操作方式,即操作的对象和结果都是集合。

这种方式称为一次一集合的方式。

而非关系数据结构的数据操作方式为一次一记录方式。

关系模型中常用的关系操作包括查询操作和插入、删除、修改操作两大部分。

3)完整性约束
关系模型提供了丰富的完整性控制机制,允许定义三类完整性:实体完整性、参照完整性和用户定义完整性。

2.定义并理解下列术语,说明它们之间的联系与区别:
1)域、笛卡尔积、关系、元组、属性
①域(Domain)
域是一组具有相同数据类型的值的集合。

②笛卡尔积(Cartesian Product)
定义3.2 给定一组域D1,D2,…,D n,这些域中可以有相同的域。

D1,D2,…,D n的笛卡尔积为:
D1×D2×…×D n={(d1,d2,…,d n)|d i D i,i=1,2,…,n}
③关系
D1×D2×…×D n的子集叫作在域D1,D2,…,D n上的关系,表示为:
R(D1,D2,…,D n),这里R是关系名。

④表的每行对应一个元组,也可称为记录(Record)。

⑤表的每列对应一个域,也可以称为字段(Filed )。

由于域可以相同,为了加以区分,必须为每列起一个名字,称为属性(Attribute)。

2)主码、候选码、外码
①若关系中的某一属性或属性组的值能唯一地标识一个元组,则称该属性组为候选码或码(Key)。

其中属性组中不能含有多余的属性。

②若一个关系有多个候选码,则选定其中一个作为主码(Primary Key)。

每个关系有且仅有一个主码。

③如果一个属性或属性组不是所在关系的码,却是另一个关系的码,则称该属性或属性组为所在关系的外码。

3)关系模型、关系、关系数据库
①关系数据库中关系模式是型,关系是值,关系模式是对关系的描述,关系模式可以用一个五元组表示:R(U,D,DOM,F)。

②关系是笛卡尔积的有限集,关系是一个二维表。

③采用关系模型的数据库称为关系数据库。

3.试述关系模型的完整性规则,在参照完整性中,为什么外码属性的值也可以为空?什么情况下才可以为空?
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码K相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
(1)或者取空值(F 的每个属性值均为空值) (2)或者等于S 中某个元组的主码值
对于选课表关系中每个元组的“课程号”属性只取两类值: (1)空值,表示该学生未选课。

(2)非空值,这时该值必须是课程表关系中出现的“课程号”值,表示该学生不可能选修一个未开设的课程。

参照完整性是不同关系之间或一个关系不同元组之间一种约束,通过外码和主码建立了不同关系之间的联系。

4.关系代数包含哪些运算?
传统的集合运算:并、交、差和笛卡尔积。

专门的关系运算:选择、投影、连接和除。

5.试述笛卡尔积、等值连接与自然连接的区别和联系。

在进行等值连接和自然连接时,必须先做笛卡尔积,然后选择其中满足条件的元组。

自然连接是特殊的等值连接,要求素有的公共属性都要相等,并且,在自然连接中最后要去掉重复的列。

6.设置有两个关系R 和S (如下),计算R-S ,R ∪S ,R ∩S,R-S,RXS,∏)(,R A B ,
)('4'R A >σ,B
S B R S R ..>∞S R ∞。

R ∪S
R ∩S
当两个表具有相同列时,不做除运算。


)(,R A
B ,
)('4'R A >σ
B
S B R S R ..>∞
7.设有三个关系
Student(Sno,Sname,Ssex,Sage,Spol,Sdept) Course(Cno,Cname,Credi,Teacher) SC(Sno,Cno,Grade) 加下划线的属性为主码。

试用关系代数表达式表示下列查询语句。

1)
查询CHEN 老师所授课程的课程号,课程名。


=))Course (('CHEN 'Teacher cname
,cno δ
2)
查询年龄小于25岁的男生的学号和姓名。


=∧<))Student ((''ssex 25sage sname
,sno 男δ
3)
查询学号为S2的学生所学课程的课程名与任课教师名。


∞∏=)Course ))SC (((s2''sno cno teacher
,name c δ
4)
查询ZHENG 同学没有选修的课程号。


∞∏∏=)
SC (Student))((-)Course (ZHENG''sname no s cno no
c δ
5)查询全部学生都选修的课程的课程号与课程名。

∏∞
(Student))
(
(SC
Course

÷) c
no
cname
,
sno
(可以有其他的表达式形式)。

相关主题