数据模型按其数据结构分为层次模型、网状模型和关系模型,根据这3种数据模型建立的数据库分别为层次数据库、网状数据库和关系数据库。Access数据库是关系数据库。
1.层次模型
层次模型是指用树形结构表示实体及其之间的联系,树中每一个节点代表一个记录类型,树状结构表示实体型之间的联系。层次模型是最早用于商品数据库管理系统的数据模型。如学校的行政机构、家族关系等。以学校的行政机构设置为例,其层次模型如图1-11所示。
层次数据模型中最基本的数据关系是基本层次关系,它代表两个记录型之间一对多的关系,也叫作双亲子女关系(PCR)。
层次模型的主要特征如下:
(1)有且只有一个结点无双亲结点(这个结点称为根结点)。
(2)其他结点有且仅有一个双亲结点。
图1-11 层次模型
层次模型的优点:存取方便且速度快;结构清晰,容易理解;数据修改和数据库扩展容易实现;检索关键属性十分方便。
层次模型的缺点:结构呆板,缺乏灵活性;只能表示1∶n的联系,不能直接表示多对多的联系;同一属性数据要存储多次,数据冗余大;不适合于拓扑空间数据的组织。
2.网状模型
用有向图结构表示实体类型及实体间联系的数据结构模型称为网状模型。顾名思义,一个事物与另外两个或多个事物有联系,这样构成一张网状图。
以学生选课为例,其网状模型如图1-12所示。学生选课数据库包括3个记录类型:学生、课程和教师。每个学生可以选修多门课程。显然对于学生记录中的一个值,课程记录中可以有多个值与之联系。而课程记录中的一个值,只能与学生记录中的一个值联系。学生与课程之间的联系是一对多的联系,联系名为学生-课程。同样,课程与教师之间的联系也是一对多的联系,联系名为课程-教师。
图1-12 网状模型
网状模型的数据结构是一个网状结构。结点之间的联系不受层次限制,任意两个结点都可以发生联系。
网状模型的主要特征如下:(https://www.xing528.com)
(1)一个结点可以有多于一个的父结点。
(2)允许一个以上的结点无父结点。
网状模型的优点:能明确而方便地表示数据间的复杂关系;数据冗余小。
网状模型的缺点:结构复杂,增加了用户查询和定位的困难;需要存储数据间联系的指针,使得数据量增大;数据的修改不方便。
3.关系模型
用二维表的形式表示实体和实体间联系的数据模型称为关系模型。关系模型的数据结构是二维表,由行和列组成,一张二维表称为一个关系。例如,学生关系模型如表1-3所示。
表1-3 学生表
关系模型的特点:
(1)在关系模型中,并不是任何属性的组合都可构成一个关系,每一个关系都必须满足一定的条件,即具备一定的特点。
(2)关系中的每一个属性不可再分,属性是关系中最基本的单位。
(3)在同一个关系中,不允许有完全相同的属性名,同一列中数据项属性相同。
(4)在同一个关系中,每一行记录由一个事物的诸多属性组成,不允许有完全相同的 记录。
(5)在同一个关系中,属性名和元组与次序无关,即可以任意交换,不改变关系的实际意义。
关系模型的优点:结构灵活,概念单一,满足所有布尔逻辑运算和数学运算规则形成的查询要求;能搜索、组合和比较不同类型的数据;增加和删除数据非常方便;具有更高的数据独立性和更好的安全保密性。
关系模型的缺点:数据库大时,查找满足特定关系的数据费时;对空间关系无法满足。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
