数据库完整性复习
数据完整性是指数据的准确性和可靠性。它的提出是为了防止数据库中存在不符合语义规定的数据,防止输入输出错误信息导致无效操作或错误信息。数据完整性可以分为四类:实体完整性(Entity Integrity)、域完整性(/br/)、参照完整性(reference Integrity)和用户定义完整性(User-definedIntegrity)。
9.1.1实体完整性
实体完整性规定一个表的每一行都是表中唯一的实体。表中定义的唯一主键和标识约束是实体完整性的体现。
9.1.2域完整性
域完整性是指数据库表中的列必须满足某种数据类型或约束。约束包括诸如值范围和精度之类的规定。表中的CHECK、FOREIGN KEY约束和DEFAULT、NOT NULL定义属于域完整性类别。
9.1.3参照完整性
参照完整性是指两个表的主键和外键的数据应该一致。它保证了有主键的表中其他表的外键对应的行的存在,即保证了表间数据的一致性,防止数据丢失或无意义的数据在数据库中扩散。参照完整性基于外键和主键或外键和唯一键之间的关系。在SQL Server中,参照完整性表现在以下几个方面:
禁止在从表中插入包含主表中不存在的关键字的数据行;
禁止将导致主表中的外键值的更改与表中的相应值隔离开来;
禁止删除主表的记录和从表的对应记录。
9.1.4自定义完整性)
/br/]不同的关系数据库系统根据其应用环境往往需要一些特殊的约束。用户定义的完整性是特定关系数据库的约束条件,反映了特定应用中涉及的数据必须满足的语义要求。SQL Server提供了定义和验证这种完整性的机制,以便以统一和系统的方式处理它们,而不是使用应用程序来承担这一功能。的其他完整性类型支持用户定义的完整性。
0条评论