2.5 关系的完整性

关系的完整性

关系模型允许定义 3 类完整性约束:实体完整性、参照完整性和用户自定义的完整性。

实体完整性和参照完整性是关系模型必须满足的完整性约束条件,称为两个不变性,应该由关系系统自动支持;

用户自定义的完整性是应用领域需要遵循的约束条件,体现了具体领域中的语义约束。

(1)实体完整性(Entity Integrity)

实体完整性规则:

关系中的主键不能为空值,也不能有重复值。

(2)参照完整性(Referential Integrity)

设 F是基本关系 R的一个或一组属性,但不是关系 R 的主码。如果 F 与基本关系 S的主码Ks相对应,则称 F 是基本关系 R 的外码(Foreign Key),并称基本关系 R为参照关系(Referencing Relation),基本关系 S 为被参照关系(Referenced Relation)或目标关系(Target Relation)。关系 R 和关系 S 有可能是同一关系。

注:主码(主键)与外码(外键)的列名不一定相同,唯一的要求是它们的值的域必须相同。

参照完整性规则:

关系的外键必须是另一个关系主键的有效值,或者是空值。

(3)用户定义的完整性

用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。也称为域完整性或语义完整性。

按应用语义,属性数据有:

类型与长度限制:方便计算机操作

取值范围限制:防止属性值与应用语义矛盾

语义许可取值范围约束 例:成绩取:[0 … 100],{优、良、中、及格、不及格}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值