第二章习题 2019213798 日期:2020/9/29

3.定义并理解下列术语,说明他们之间的联系和区别:

(1) 域,笛卡尔积,关系,元组,属性:

名称定义与理解联系与区别
域是一组具有相同数据类型的值的集合,所有人的名字,学生学号等
1.属性的取值来自某个域。
2.笛卡尔积是所有域的所有取值的一个组合。
3.笛卡尔积中的每个元素是一个元组。
4.关系是一张二维表,表的每行对应着一个元组,表中的每一列对应一个属性。
笛卡尔积域上面的一种集合运算,通俗点说就是集合相乘,例如: A={1},B={18,7,5} 那么A,B的笛卡尔积为: A×B={(1,18),(1,7),(1,5)}
关系一个关系对应通常说的一张表,表示为 R(D1,D2,…,Dn) R:关系名,n:关系的目或度
属性表中一列为一个属性

(2) 主码,候选码,外码:

名称定义与理解联系与区别
候选码若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码。 候选码的值可以唯一的标识一个元组,如果一个关系里面有多个候选码,那么其中的一个定位主码,外码是一个与候选码相关的属性。
主码若一个关系有多个候选码,则选定其中一个为主码,一般为独一无二的那个候选码,如学号,职工号等。
外码是关系的一个属性组,但是并不是这个关系的候选码,但是却与另一个关系的候选码相对应。

(3) 关系模式,关系,关系数据库:

名称定义与理解联系与区别
关系模式关系的描述称为关系模式,例: R(A,B,C)R是关系名;A,B,C是属性名 关系模式是对关系的描述,关系是关系模式在某一个时刻的状态或内容,关系数据库是所有关系的集合,关系模式在某一时刻对应的关系的集合是关系数据库。关系模式是对关系的描述,是静态,稳定的, 关系是关系模式在某一个时刻的状态或内容,是动态的,不断变化的
关系基本关系、查询表和视图表
关系数据库关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就被称为关系数据库。所有关系的集合构成了一个关系数据库.

5.试述关系模型的完整性规则。在参照完整性中,什么情况下外码属性的值可以为空值?

  • 定义:

关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。
其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称做事关系的两个不变性,应该由关系系统自动支持。
(1)实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。
(2)参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
(1)或者取空值(F的每个属性值均为空值)
(2)或者等于S中的某个元组的主码值。
(3)用户定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。

  • 理解:

关系完整性:实体完整性,参照完整性,用户定义的完整性。
实体完整性:如果属性A是关系R的主属性,那么属性A的值不能为空值,
例:学生(姓名学号,专业),其中姓名和学号是主属性,那么学号和姓名的值不能为空
参照完整性:若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值
例:
学生(姓名,学号,课序号)
课程(课序号,课程名称)
在关系学生中,课序号是外码,该值或者取空值或者在关系课程中是某个元组的主码,不能是一个本课程关系中未出现的一个值
用户定义的完整性:针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求
例:
学生(姓名,学号,性别)
姓名和学号必须填写
性别的取值只能是“男“或者”女“

  • 空值:

在参照完整性中,外码源自于被参照关系的主码,该情况下外码属性的值可以为空值。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐