在DBMS中,关系上的完整性约束是什么?
对于任何存储的数据,如果我们希望保持一致性和正确性,关系型DBMS通常会施加一个或多个数据完整性约束。这些约束限制了可以插入到数据库中或由数据库更新创建的数据值。
数据完整性约束
关系数据库中通常存在不同类型的数据完整性约束,包括以下内容:
必填数据 - 数据库中的一些列在每一行中都包含一个有效的数据值;不允许包含NULL值。在示例数据库中,每个订单都与一个下订单的客户相关联。可以要求DBMS防止此列中出现NULL值。
有效性检查 - 数据库中的每一列都有一个域,即该列的合法数据值的集合。DBMS允许防止这些列中出现其他数据值。
实体完整性 - 表的主键在每一行中包含一个唯一值,该值与所有其他行中的值不同。重复值是非法的,因为它们不允许数据库区分一个实体与另一个实体。可以要求DBMS强制执行此唯一值约束。
参照完整性 - 关系数据库中的外键将子表中包含外键的每一行链接到父表中包含匹配主键值的该行。可以要求DBMS强制执行此外键/主键约束。
其他数据关系 - 数据库建模的现实世界情况通常具有其他约束,这些约束控制可能出现在数据库中的合法数据值。DBMS允许检查对表的修改,以确保其值以这种方式受到约束。
业务规则 - 对数据库的更新受到管理更新所表示的现实世界事务的业务规则的约束。
一致性 - 许多导致对数据库进行多次更新的现实世界事务。DBMS允许强制执行此类一致性规则或支持实现此类规则的应用程序。
广告