1.2.2 常见的数据模型

常见的数据库数据模型主要有层次模型、网状模型和关系模型。

1.层次模型

用树状结构表示实体类型及实体间联系的数据模型被称为层次模型,如图1.2所示。其特点如下。

(1)每棵树有且仅有一个无双亲节点,称为根。

(2)树中除根外所有节点有且仅有一个双亲。

2.网状模型

用有向图结构表示实体类型及实体间联系的数据模型被称为网状模型,如图1.3所示。用网状模型编写应用程序极其复杂,数据的独立性较差。

图1.2 层次模型

图1.3 网状模型

3.关系模型

关系模型以二维表来描述数据。在关系模型中,每个表都有多个字段列和记录行,而每个字段列都有固定的属性(数字、字符、日期等),如图1.4所示。关系模型数据结构简单、清晰,具有很高的数据独立性,是目前主流的数据库数据模型。关系模型的基本术语如下。

(1)关系:一个二维表就是一个关系。

(2)元组:二维表中的一行,即表中的记录。

(3)属性:二维表中的一列,用类型和值表示。

(4)域:每个属性取值的变化范围,如性别的域为{男,女}。

关系中的数据约束如下。

(1)实体完整性约束:约束关系的主键中属性值不能为空值。

(2)参照完整性约束:关系之间的基本约束。

(3)用户定义的完整性约束:反映了具体应用中数据的语义要求。

图1.4 关系模型