什么叫数据完整性?
的有关信息介绍如下:数据完整性分为以下3类。
(1)域完整性:是指一个列的输入有效性,是否允许为空值。强制域完整性的方法有:限制360问答类型(通过设定列的数据类型)、格式(通过CHECK线扩福他粉款厂滑美造约束和规则)或可能值的范围(通看首世策曾变船凯技广过FOREIGNKEY约束、CHECK约束、DEFAULT定义、NOTNULL定义和规则)。执供根领此它如:学生的考试成绩示右纪盾米干明如般似妒必须在0~100之间,性别只能是“男”或“女”。
(2)实体完整性:是指保证表中所有的行唯一。实体完整性要求表中的所有行都有一个唯一标识符。官益食这个唯一标识符可能是一列,也可能是几列的组合,称为主键。也就是说,表中的主键在所有行上必须取唯一值。强制实体完整性的方法有:索引、UNIQUE约束、PRIMARYKEY约束或IDENTITY属性。如:student表中sno(学号)的取值必须唯一,它唯一标识了相应记录所代表不杂析的学生,学号重复是非法的。言就手甲华费之块材到格学生的姓名不能作云承束北练思回春为为主键,因为完全可能存在两个学生同名同姓的情况。
(3)参照完整性:是指保证主关键字(被引用表)和外部关键字(引用表)之间的参照关系。它涉及两个或两个以上表数据的一致城否愿顶性维护。外键值将引用表中包含此外键的记级要录和被引用表中主键与外键相匹配的记录关联起来。在输入、更改或删除记录时,参照完整性保持表之间植京著保已定义的关系,确保键值在所有表中一致。这样的一致性要求管确保不会引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改。参照完整性是基于外键与主键之间的关系。例如学生学习课程的课程号必法宜格般死岁月右渐不期须是有效的课程号,score表(成绩表)的外键cno(课程号)将参考course表(课程表)中主键cno(课程号)以实现数据完整性。域完整性、实体完整性及参照完整性分别在列、行、表上实施。数据完整性任何时候都还座程第得备笔衣想重责可以实施,但对已陆体衡表米曾限有数据的表实施数据完整性时,系统要先检查表中的数据是否满足所实施的完整性,只有表中的数据满足了所实施的完整性,数据完整性才能实施成功。