【BUAA-数据管理技术】8-完整性约束

本文内容系2024年北航软件学院数据管理技术课程课堂笔记,内容大部分取自课程PPT,少量来源于互联网,若有侵权请联系删除。文章内容如有错漏,敬请批评指正!

第六章 完整性约束

08 - 完整性约束

6.1 完整性约束

数据库的完整性:

  • 数据库的正确性和相容性
  • 防止不合语义的数据进入数据库

6.1.1 完整性控制机制

  • 完整性约束条件定义机制
    • 完整性约束条件:数据模型的组成部分,约束数据库中数据的语义
    • DBMS 应提供定义数据库完整性约束条件的方法
  • 完整性检查机制:检查用户发出的操作请求是否违背了完整性约束条件
  • 违约反应:如果用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性

6.1.2 完整性约束条件

完整性约束条件作用的对象:

  • 列:对属性的取值类型、范围、精度等的约束条件
  • 元组:对元组中各个属性列间的联系的约束
  • 关系:对若干元组间、关系集合上以及关系之间的联系的约束

对象的两种状态:

  • 静态:对静态对象的约束是反映数据库状态合理性的约束
  • 动态:对动态对象的约束是反映数据库状态变迁的约束。涉及新值和旧值
六类完整性约束条件
  1. 静态列级约束:对列的取值域的说明,如取值类型、取值范围、是否为空值等约束

  2. 静态元组约束

    • 规定元组的各个列之间的约束关系
    • 如有订货关系(ID,商品,订货量,发货量),要求每条记录中:发货量 < = <= <=订货量
    • Check约束实现
  3. 静态关系约束:关系的各个元组之间或若干关系之间存在的各种联系或约束

    • 分类:实体完整性约束、参照完整性约束、函数依赖约束、统计约束…

    • 需用触发器实现

    • 例:职工平均工资的2倍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值