数据完整性:
数据完整性要求数据库中的数据具有“准确性”。如果两个更多或者更多的表由于其存储的信息相关联,那么只要修改了其中一个表,与之相关的所有表都要做出相应的修改,如果不这样做,存储的数据会不再准确,也就失去了数据完整性。
为了实现数据完整性,数据库需要做一下两方面的工作。
(1)检验每行数据是否符合要求。
(2)检验没列数据是否符合要求。
为了实现以上要求,sql server提供了一下四种类型的约束(constraint):
实体完整性:实体完整性要求表中的每一行数据都反映不同的实体,不能存在相同的数据行。通过索引、唯一约束、主键约束或标识列属性,可以实现标的完整性。
域完整性约束:域完整性指给定列输入的有效性。通过限制数据类型、检查约束、输入格式、外键约束、默认值、非空等约束来实现域完整性。
引用完整性约束:在输入或者删除数据行时,引用完整性约束用来保持表之间已经定义的关系。
自定义完整性约束:用户自定义完整性用来定义特定的规则