关系完整性约束是为保证数据库中数据的 正确性和相容性,从而对关系模型提出的某种约束条件或规则。完整性通常包括 实体完整性参照完整性用户定义完整性,其中 实体完整性参照完整性 是关系模型必须满足的完整性约束条件

下面来依次说明这三种完整性,开始吧~

ppx2.jpg

实体完整性

它主要指关系中的 主属性 不能为 空值

一个关系对应现实世界中一个实体集,现实世界中的实体是可以相互区分、识别的,也即它们应具有某种惟一性标识。在关系模式中,以 主关键字 作为唯一性标识,而主关键字中的属性(称为主属性)不能取空值,否则,表明关系模式中存在着不可标识的实体,这与现实世界的实际情况相矛盾,这样的实体就不是一个完整实体

参照完整性

参照完整性是定义建立关系之间联系的 主关键字外部关键字 引用的约束条件

关系数据库中通常都包含多个存在相互联系的关系,关系与关系之间的联系是通过 公共属性 来实现的

inte.jpg

所谓公共属性,它是一个关系R(称为被参照关系或目标关系)的主关键字,同时又是另一关系K(称为参照关系)的外部关键字。如果参照关系K中外部关键字的取值,要么与被参照关系R中某元组主关键字的值相同,要么取空值,那么,在这两个关系间建立关联的主关键字和外部关键字引用,符合参照完整性规则要求

用户自定义完整性

用户定义完整性是根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。这一约束机制一般不应由应用程序提供,而应该由 关系模型 提供定义并检验,用户自定义完整性主要包括:字段有效性约束记录有效性约束

结语

关系的完整性约束保证了在数据库中所有数据的关联是有效的,进而确保了数据的有效性,因此它是数据库中必不可少的一员,我们在学习数据库的过程中,也一定要弄明白它是用来干嘛的,这样才能真正掌握并运用好数据库,好啦,over!