2.3.1 实体完整性

2.3.1 实体完整性

实体完整性规则:若属性A是关系R的主属性,则属性A的值不能为空值(Null)。

实体完整性规则是针对基本关系的,一个基本关系对应的是现实世界中的一个实体集,关系中的每一行(元组)对应着现实世界中的一个个实体,在现实世界中的实体是可区分(具有唯一性),并且是真实存在的,对应到关系模型中,实体完整性规则的具体说明如下:

①因为现实世界中的实体都是互相可区分的,具有唯一性,因此关系中使用主码(主属性)作为实体的唯一性标识,不能取重复值或者无主码值。

②因为现实世界中的实体都是真实存在的,因此主码(主属性)不能取Null值。在数据库领域,Null表示空值,不是空格值,Null和现实世界的语义对应是“不知道”“不确定”的值。如果主码取Null值,表明现实世界中存在“不知道”“不确定”的实体,这显然违背了现实世界。

例如,学生关系模式中包含学号、姓名、性别、所在系、出生日期等属性,“学号”是主码,“学号”作为对现实世界中每个学生实体的唯一标识,对于此关系模式中的每个元组,“学号”不能有重复值,不能无值,也不能是Null值。而其他属性,如“性别”可以取Null值,则表示某个学生的性别这些值还不知道、不确定,但并不影响该元组所对应的实体的唯一性和存在性。