上QQ阅读APP看书,第一时间看更新
项目1.4 实现关系的完整性
关系的完整性规则也可称为关系的约束条件。它是对关系的一些限制和规定。通过这些限制保证数据库中的数据合理、正确和一致。关系的完整性规则包括实体完整性、参照完整性和域完整性。
任务1.4.1 设置实体完整性
在任何关系的任何一个元组中,主键的值不能为空值。
这条规定的现实意义是,关系数据模型对应的是现实世界的数据实体,而主键是实体唯一性的表现,没有主键就没有实体,所有主键不能是空值。这是实体存在的最基本前提,所以称之为实体完整性。
任务1.4.2 设置参照完整性
参照完整性规则也可称为引用完整性规则。这条规则要求“不引用不存在的实体”,它是对关系外键的规定,要求外键取值必须是客观存在的,即不允许在一个关系中引用另一个关系不存的元组。
例如,前面给出的学生表和学院表中,学院编号是学生表的外键,也是学院表的主键。根据参照完整性规则,要求学生表中的学院编号的取值只能是以下两种情况。
1)取空值。表明该学生还未被分配到任何学院。例如,某位学生还没有确定在哪个学院,则该学生元组的学院编号处可空着不写,待以后填写。注意:空值不是0或空格。
2)取非空值。若取非空值,则它必须是学院表中学院编号存在的值,即学生表学院编号的值必须和学院表中的学院编号的值保持一致。因为一个学生不能属于一个不存在的学院。
任务1.4.3 设置域完整性
由用户根据实际情况,对数据库中数据的内容所做的规定称为域完整性规则,也称用户定义完整性规则。通过这些规则限制数据库只接受符合完整性约束条件的数据,不接受违反约束条件的数据,从而保证数据库的数据合理可靠。
3 规范化关系数据模型
例如,表中的性别数据只能是男和女。对年龄数据也应该有一定的限制,不能是任意值。