数据模型
(1)概念模型
概念数据模型(conceptual data model)是面向用户的数据模型,它是用户所容易理解的现实世界特征的数据抽象。
逻辑模型
目前最常用的逻辑模型有:
层次模型(Hierarchical Model)
网状模型(Network Model)
关系模型(Relational Model)
逻辑模型的三要素
1.数据结构
2.数据操作
3.完整性约束
层次模型
层次模型是数据库系统中最早出现的数据模型,采用层次模型的数据库的典型代表是IBM公司的IMS(InformationManagement System)数据库管理系统
层次模型用一棵“有向树”的数据结构来表示各类实体以及实体间的联系。
层次模型的特征:
且仅有一个结点没有双亲,该结点就是根结点;
根以外的其他结点有且仅有一个双亲结点,这就使得层次数据库系统只能直接处理一对多的实体关系;
任何一个给定的记录值只有按其路径查看时,才能显出它的全部意义,没有一个子女记录值能够脱离双亲记录值而独立存在。
层次模型的数据操纵与数据完整性约束
层次模型的数据操纵主要有查询、插入、删除和修改
进行插入、删除和修改操作时要满足层次模型的完整性约束条件。进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值;进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除;修改操作时,应修改所有相应的记录,以保证数据的一致性。
层次模型的优缺点
优点:
比较简单 ,容易使用。
结构清晰,结点间联系简单 。
它提供了良好的数据完整性支持。
缺点:
不能直接表示两个以上的实体型间的复杂的联系和实体型间的多对多联系,只能通过引入冗余数据或创建虚拟结点的方法来解决,易产生不一致性。
对数据的插入和删除的操作限制太多。
查询子女结点必须通过双亲结点。
网状模型
网状模型取消了层次模型的不能表示非树型结构的限制,两个或两个以上的结点都可以有多个双亲结点,则此时有向树变成了有向图,该有向图描述了网状模型。
网状模型的特征
1.有一个以上的结点没有双亲
2.至少有一个结点可以有多于一个双亲。
网状模型的优缺点
优点:
能更为直接地描述客观世界,可表示实体间的多种复杂联系。
具有良好的性能和存储效率。
缺点:
结构复杂,其DDL语言极其复杂。
数据独立性差,由于实体间的联系本质上是通过存取路径表示的,因此应用程序在访问数据时要指定存取路径。