>例22如图112所示的选课关系中的“学号”属性与学 生关系的主码“学号”相对应,“课程号”属性与课 程关系的主码“课程号”相对应,因此,“学号”和 “课程号”属性是选课关系的外部关系键。学生关系 和课程关系为被参照关系,选课关系为参照关系。 由外部关系键的定义可知,被参照关系的主码和参照 关系的外码必须定义在同一个域上。 如选课关系中的“学号”与学生关系的主码“学号”定义在 同一个域上,“课程号”属性与课程关系的主码“课程号” 定义在同一个域上
返回 26 ➢ 例2.2 如图1.12所示的选课关系中的“学号”属性与学 生关系的主码“学号”相对应, “课程号”属性与课 程关系的主码“课程号”相对应,因此, “学号”和 “课程号”属性是选课关系的外部关系键。学生关系 和课程关系为被参照关系,选课关系为参照关系。 ➢ 由外部关系键的定义可知,被参照关系的主码和参照 关系的外码必须定义在同一个域上。 ➢ 如选课关系中的“学号”与学生关系的主码“学号”定义在 同一个域上, “课程号”属性与课程关系的主码“课程号” 定义在同一个域上
244关系模型的完整性 为了维护数据库中数据与现实世界的一致性,对关系 数据库的插入、删除和修改操作必须有一定的约束条 件,这就是关系模型的三类完整性: 实体完整性 参照完整性 用户定义的完整性 实体完整性( Entity Integrity) 实体完整性是指主关系键的值不能为空或部分为空。 关系模型中的一个元组对应一个实体,一个关系则对 应一个实体集。 例如,一条学生记录对应着一个学生,学生关系对应着学生 的集合
返回 27 2.4.4 关系模型的完整性 ➢ 为了维护数据库中数据与现实世界的一致性,对关系 数据库的插入、删除和修改操作必须有一定的约束条 件,这就是关系模型的三类完整性: ➢ 实体完整性 ➢ 参照完整性 ➢ 用户定义的完整性 1. 实体完整性(Entity Integrity) ➢ 实体完整性是指主关系键的值不能为空或部分为空。 ➢ 关系模型中的一个元组对应一个实体,一个关系则对 应一个实体集。 ➢ 例如,一条学生记录对应着一个学生,学生关系对应着学生 的集合
>现实世界中的实体是可区分的,即它们具有某种唯一性 标识。与此相对应,关系模型中以主关系键来唯一标识 元组。 例如,学生关系中的属性“学号”可以唯一标识一个元组,也 可以唯一标识学生实体。 如果主关系键中的值为空或部分为空,即主属性为空, 则不符合关系键的定义条件,不能唯一标识元组及与其 相对应的实体。这就说明存在不可区分的实体,从而与 现实世界中的实体是可以区分的事实相矛盾。因此主关 系键的值不能为空或部分为空。 例如,学生关系中的主关系键“学号”不能为空;选课关系中 的主关系键“学号+课程号”不能部分为空,即“学号”和“课 程号”两个属性都不能为空
返回 28 ➢ 现实世界中的实体是可区分的,即它们具有某种唯一性 标识。与此相对应,关系模型中以主关系键来唯一标识 元组。 ➢ 例如,学生关系中的属性“学号”可以唯一标识一个元组,也 可以唯一标识学生实体。 ➢ 如果主关系键中的值为空或部分为空,即主属性为空, 则不符合关系键的定义条件,不能唯一标识元组及与其 相对应的实体。这就说明存在不可区分的实体,从而与 现实世界中的实体是可以区分的事实相矛盾。因此主关 系键的值不能为空或部分为空。 ➢ 例如,学生关系中的主关系键“学号”不能为空;选课关系中 的主关系键“学号+课程号”不能部分为空,即“学号”和“课 程号”两个属性都不能为空
2.参照完整性( Referential integrity) >如果关系R2的外部关系键X与关系R的主关系键相符, 则X的每个值或者等于R1中主关系键的某一个值,或 者取空值。 在例2.1系别关系中的属性“系别”是学生关系外部关 系键。 如图22所示,学生关系中某个学生(如s或s2)“系别”的 取值,必须在参照的系别关系中主关系键“系别”的值中能 够找到,否则表示把该学生分配到一个不存在的部门中,显 然不符合语义。 如果某个学生(如s11)“系别”取空值,则表示该学生尚未 分配到任何一个系。否则,它只能取专业关系中某个元组的 专业号值
返回 29 2. 参照完整性(Referential integrity) ➢ 如果关系R2的外部关系键X与关系R1的主关系键相符, 则X的每个值或者等于R1中主关系键的某一个值,或 者取空值。 ➢ 在例2.1系别关系中的属性“系别”是学生关系外部关 系键。 ➢ 如图2.2所示,学生关系中某个学生(如s1或s2)“系别”的 取值,必须在参照的系别关系中主关系键“系别”的值中能 够找到,否则表示把该学生分配到一个不存在的部门中,显 然不符合语义。 ➢ 如果某个学生(如s11)“系别”取空值,则表示该学生尚未 分配到任何一个系。否则,它只能取专业关系中某个元组的 专业号值
S(学生关系) D(系别关系) SNO SEX AGE DEPT DEPT ADDR 学号 姓名性别年龄所在系 所在系地址 SI 赵亦 女男 17计算机 计算机1号楼 S 钱尔 信息 信息1号楼 自动化2号楼 S11 王威男 19 图22学生表和系别表
返回 30 S(学生关系) D(系别关系) 图2.2 学生表和系别表 SNO 学号 SN 姓名 SEX 性别 AGE 年龄 DEPT 所在系 DEPT 所在系 ADDR 地址 S1 赵亦 女 17 计算机 计算机 1号楼 S2 钱尔 男 18 信息 信息 1号楼 … 自动化 2号楼 S11 王威 男 19