关系的三类完整性约束

规则2.1实体完整性规则(Entity Integrity)
若属性A是基本关系R的主属性,则属性A不能取空值
空值就是“不知道”或“不存在”或“无意义”的值

     例:

选修(学号,课程号,成绩)

“学号、课程号”为主码

“学号”和“课程号”两个属性都不能取空值

实体完整性规则的说明

(1)实体完整性规则是针对基本关系而言的。

         一个基本表通常对应现实世界的一个实体集。

(2)现实世界中的实体是可区分的,即它们具有某种唯  

          一性标识。

(3)关系模型中以主码作为唯一性标识。

(4)主码中的属性即主属性不能取空值

   主属性取空值,就说明存在某个不可标识的实体,即存在不可区分的实体,这与第(2)点相矛盾,因此这个规则称为实体完整性


规则2.2 参照完整性规则

若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:

或者取空值(F的每个属性值均为空值)
或者等于S中某个元组的主码值
即外码要么为空,要么为参照关系的主码的值
参照完整性规则的说明

关系R和S不一定是不同的关系
目标关系S的主码Ks 和参照关系的外码F必须定义在同一个(或一组)域上
外码并不一定要与相应的主码同名

当外码与相应的主码属于不同关系时,往往取相同的名 字,以便于识别


规则2.3 用户定义的完整性规则

针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求
关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不需由应用程序承担这一功能



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斜阳雨陌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值