1
数据库原理与应用技术
1.7.3.2 6.3.2 完整性规则
6.3.2 完整性规则

完整性子系统控制数据完整性的依据就是完整性规则。完整性规则集是数据库管理员和应用程序员事先向完整性子系统提供的相关数据语义约束的一组规则。它主要用于检查数据库中的数据是否满足语义约束。完整性规则主要由以下三部分组成。

1. 规则的触发条件

规定系统使用规则来检查数据的时间。

2. 约束条件或谓词

规定系统检查用户发出的操作请求违背了什么样的完整性约束条件。

3. ELSE子句(违约响应)

规定系统如果发现用户的操作请求违背了完整性约束条件,则应该采取措施来保证数据的完整性。

这些规则用DBMS提供的DDL进行描述,经过编译后存放在数据字典中,从进入系统的那一刻开始执行这些规则,输入系统后由系统执行。其主要优点如下。

(1) 由系统处理违反规则的情况,用户可以不必理会。

(2) 将规则集中存放在数据字典中,比将规则散放在应用程序中要便于修改,用户也便于从整体上来理解这些规则,提高了效率。

在关系模型中,数据完整性分为四类:实体完整性(Entity Integrity)、域完整性(Domain Integrity)、参照完整性(Referential Integrity)和用户定义的完整性(User-defined Integrity)。