2.2.2参照完整性 ■在关系模型中实体及实体间的联系都是用关系来描述的,因此 可能存在着关系与关系间的引用。 例1学生实体、专业实体以及专业与学生间的一对多联系 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名) 例2学生、课程、学生与课程之间的多对多联系 学生(学号,姓名,性别,专业号,年龄) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩) 例3学生实体及其内部的领导联系(一对多) 学生(学号,姓名,性别,专业号,年龄,班长学号)
2.2.2 参照完整性 ◼ 在关系模型中实体及实体间的联系都是用关系来描述的,因此 可能存在着关系与关系间的引用。 例1 学生实体、专业实体以及专业与学生间的一对多联系 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名) 例2 学生、课程、学生与课程之间的多对多联系 学生(学号,姓名,性别,专业号,年龄) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩) 例3 学生实体及其内部的领导联系(一对多) 学生(学号,姓名,性别,专业号,年龄,班长学号)
2.2.2参照完整性 ■外码:设F是基本关系R的一个或一组属性,但不是关系R 的主码。如果F与基本关系S的主码K相对应,则称F是基 本关系R的外码。 基本关系R为参照关系 基本关系$为被参照关系或目标关系
2.2.2 参照完整性 ◼ 外码:设F是基本关系R的一个或一组属性,但不是关系R 的主码。如果F与基本关系S的主码Ks相对应,则称F是基 本关系R的外码。 基本关系R为参照关系 基本关系S为被参照关系或目标关系
2.2.2参照完整性 ■参照完整性规则:若属性F是基本关系R的外码,它与基本关系S 的主码K相对应,则对于R中每个元组在F上的值必须为: 口或者取空值 口或者等于$中某个元组的主码值 说明 ■关系和S不一定是不同的关系 ■目标关系的主码K。和参照关系的外码F必须定义在同一个(或 一组)域上 ■外码并不一定要与相应的主码同名,当外码与相应的主码属于 不同关系时,往往取相同的名字,以便于识别
2.2.2 参照完整性 ◼ 参照完整性规则:若属性F是基本关系R的外码,它与基本关系S 的主码Ks相对应,则对于R中每个元组在F上的值必须为: 或者取空值 或者等于S中某个元组的主码值 说明 ◼ 关系R和S不一定是不同的关系 ◼ 目标关系S的主码Ks 和参照关系的外码F必须定义在同一个(或 一组)域上 ◼ 外码并不一定要与相应的主码同名,当外码与相应的主码属于 不同关系时,往往取相同的名字,以便于识别
2.3.3用户定义的完整性 ■用户定义的完整性是针对某一具体关系数据库的约束 条件,反映某一具体应用所涉及的数据必须满足的语 义要求。 例:选修(学号,课程号,成绩) 成绩的取值范围在0ˇ100之间 ■关系模型应提供定义和检验这类完整性的机制,以便 用统一的系统的方法处理它们,而不要由应用程序承 担这一功能
2.3.3 用户定义的完整性 ◼ 用户定义的完整性是针对某一具体关系数据库的约束 条件,反映某一具体应用所涉及的数据必须满足的语 义要求。 例:选修(学号,课程号,成绩) 成绩的取值范围在0~100之间 ◼ 关系模型应提供定义和检验这类完整性的机制,以便 用统一的系统的方法处理它们,而不要由应用程序承 担这一功能
2.3关系形式化定义 ■2.3.1关系的数学定义 ■2.3.2关系操作
2.3 关系形式化定义 ◼ 2.3.1 关系的数学定义 ◼ 2.3.2 关系操作