1.3 数据库的数据模型
数据模型是一种对客观事物抽象化的表现形式,它对客观事物加以抽象,通过计算机来处理现实世界中的具体事物。数据模型客观反映了现实世界,易于理解,与人们对外部事物描述的认识一致。
1.3.1 数据模型的概念
数据模型是数据库系统的核心与基础,是关于描述数据与数据之间的联系,数据库的语义、数据一致性约束的概念性工具的集合。
数据模型通常是由数据结构、数据操作和完整性约束三部分组成。
- 数据结构:是对系统静态特征的描述。描述对象包括数据的类型、内容、性质和数据之间的相互关系。
- 数据操作:是对系统动态特性的描述。是对数据库中各种对象实例的操作。
- 完整性约束:是完整性规则的集合。它定义了给定数据模型中数据及其联系所具有的制约和依存规则。
1.3.2 层次结构模型
用树状结构表示实体类型及实体间联系的数据模型称为层次结构模型,简单地讲,层次结构模型实质上是一种有根结点的定向有序树(在数学中“树”被定义为一个无回的连通图)。
如图1-2所示是一个计算机系统的组织结构图,这个组织结构图像一棵树,系统就是树根(称为根结点),各个组件、组件系统、主板、电源等称为枝点(也称为枝结点),树根与枝结点之间的联系称为边,树根与边之比为1∶N,如同一棵树,树根只能有一个,但树枝可以有N个。
图1-2 计算机系统的组织结构图
按照层次模型建立的数据库系统称为层次模型数据库系统,IMS(Information Management System)是其典型代表。层次结构模型具有以下特点:
- 每棵树有且仅有一个无双亲结点,称为根。
- 树中除根外所有结点有且仅有一个双亲。
1.3.3 网状结构模型
用有向图表示实体类型及实体间联系的数据模型称为网状模型。按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG(DataBase Task Group),图1-3所示为一个网状结构模型示意图。
图1-3 网状结构模型示意图
网状模型的数据结构主要有以下两个特征:
- 允许一个以上的结点无双亲。
- 一个结点可以有多于一个的双亲。
网状数据模型具有以下优点:
- 能够更为直接地描述现实世界。如一个结点可以有多个双亲,结点之间可以有多种联系。
- 具有良好的性能,存取效率较高。
网状数据模型具有以下缺点:
- 结构比较复杂,而且应用环境越大,数据库的结构就变得越复杂,不利于最终用户掌握。
- 其数据定义语言(DDL)、数据操作语言(DML)复杂,用户不容易使用。
1.3.4 关系结构模型
用二维表的形式表示实体和实体间联系的数据模型称为关系结构模型。关系结构模型中无论是实体还是实体间的联系均由单一的结构类型——关系来表示,在实际的关系数据库中的关系也称为表,一个关系数据库就是由若干个表组成的。关系结构模型的列表如表1-1和表1-2所示。
表1-1 员工信息表
表1-2 部门信息表
关系结构模型具有如下优点。
(1)数据结构单一。
关系模型中,不管是实体还是实体之间的联系,都用关系来表示,而关系都对应一张二维数据表,数据结构简单、清晰。
(2)关系规范化,并建立在严格的理论基础上。
构成关系的基本规范要求关系中的每个属性不可再分割,同时关系建立在具有坚实的理论基础的严格数学概念基础上。
(3)概念简单,操作方便。
关系模型最大的优点就是简单,用户容易理解和掌握,一个关系就是一张二维表格,用户只需用简单的查询语言就能对数据库进行操作。