数据库的完整性是指数据的正确性和相容性。为防止错误数据进入数据库,DBMS提供了完整性约束机制,通过对数据库表结构进行约束,当对数据进行修改时由系统对修改数据进行完整性检查,将错误数据拒绝于数据库之外。
完整性约束条件作用的对象可以是表、行和列三种。
约束条件 | 举例 | 定义 | 实现 | ||
1 | 列级约束 | 列的类型、取值范围、精度、非空值、值不可重复等 | 学生性别只能是男或女, 百分制成绩只能取0-100整数 | (1)列级约束、主码约束、参照完整性约束通过DDL实现 | DBMS提供的完整性约束机制 |
2 | 行级约束 | 记录字段值之间联系 | 余额应该等于存入金额减去支出金额的差值 | (2)相对复杂的约束需要编写触发器(trigger)程序实现 | 触发器机制执行程序 |
3 | 表级约束 | 表的主码约束、表间的参照完整性约束、表中记录间的联系约束 | 如部门最高工资不能大于本部门平均工资的5倍 |