关系的完整性

1. 实体完整性:

  实体完整性即:每个关系应该有一个主码(唯一标识表中的一条记录),每个元组的主码值唯一确定该元组,主码的任何属性都不能取空值 。

2. 参照完整性:

  如果属性 A 是关系 R 的外码,且对应了关系 S 的主码K( R 和 S可以是同一个关系),那么对于R中的每个元组中的 F上的值,必须满足: (1) 要么F取空值 (2) 要么等于S中某个元组的主码的值。

  举个例子:有三个表【学生(学号,姓名)】 【 课程(课程号,课程名)】 【选修(学号,课程号,成绩)】 

  选修表中的学号就称为选修表的一个外码,它对应的是学生表中的学号,选修关系为参照关系,而学生关系为被参照关系。 在选修关系中的学号,必须是学生表里真正存在的学号, 选修表里的课程号,也必须是课程表里真正存在的课程号。 这就是参照完整性。 

3. 用户定义完整性

  针对某一具体关系数据库的约束条件称为用户定义的完整性,它反映某一具体应用所涉及的数据必须满足的语意要求,比如限制性别只能是男或女。

 

posted @ 2022-10-11 08:25  nixwl  阅读(357)  评论(0)    收藏  举报