数据库三类完整性规则

本文详细阐述了数据库的三个完整性规则:实体完整性、参照完整性和用户定义的完整性。实体完整性要求主键属性不允许为空;参照完整性确保外键引用的有效性,避免引用不存在的实体;用户定义的完整性则允许用户根据需求设定特定的数据约束。通过这些规则,可以维护数据库中数据的一致性和准确性。
摘要由CSDN通过智能技术生成

为了维护数据库中的数据与现实的一致性,关系数据库的数据与更新操作必须遵守下列三类完整性规则:实体完整性规则,参照完整性规则,用户定义的完整性。

1.完整实体性规则  

这个规则要求关系中元组在组成主键的属性上不能有空值,如果出现空值,那么主键值就起不了唯一表示元组的作用。

2.参照完整性规则

如果属性集K是关系模式R1的主键,K也是关系模式的R2的外键,那么在R2的关系中,K的取值只允许两种可能,或者为空值,或者等于R1的关系中某个主键值。

这条规则的实质是“不允许引用不存在的实体”,这条规则在具体的使用时,有三点变通:

1)外键和相应的主键可以不同名,只要定义在相同值域上即可;

2)R1和R2也可以是同一个关系模式,此时表示了同一个关系中的不同元组之之间的联系;

3)外键值是否允许空,应视具体问题而定;

3.用户定义的完整性规则

在建立关系模式时,对属性定义了数据类型,即使这样可能满足不了用户的需求,此时,用于可以针对具体的数据约束,设置完整性规则,由系统来检验实施,以使用统一的方式处理他们,不再由应用程序承担这项工作。

例如学生的定义为两位数,范围还太大,我们可以写如下规则把年龄限制在15~30岁之间:

CHECK (AGE,BETWEEN,15,AND,30)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

突破边界

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

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

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

打赏作者

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

抵扣说明:

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

余额充值