典型代表是1968年IBM公司推出的第一个大型商用数据库管理系统——IMS(information management system)
层次模型用树形结构来表示各类实体以及实体间的联系。实体用记录来表示,实体间的联系用链接(可看作指针)来表示
满足如下两个条件的基本层次联系的集合为层次模型:
有且只有一个结点没有双亲结点,这个结点称为根结点
根以外的其他结点有且只有一个双亲结点
在层次模型中,每个节点表示一个记录型,记录(型)之间的联系用结点之间的连线(有向边)表示,这种联系是父子之间的一对多的联系。
每个记录型由若干个字段组成,记录型描述的是实体,字段描述的是实体的属性。每个记录型可以定义一个排序字段,也称为码字段,如果所定义的排序字段的值唯一,则它也可以用来唯一标识一个记录值
层次模型的主要优点:
- 数据结构比较简单清晰
- 查询效率高
- 提供了良好的数据完整性支持
层次模型的主要缺点:
- 现实世界中很多联系是非层次的(如多对多联系),层次模型在表示这类联系时,解决的办法:一是通过引入冗余数据(易产生不一致性),二是创建非自然的数据结构(引入虚拟结点) 。对插入和删除操作的限制比较多,因此应用程序的编写比较复杂
- 查询孩子结点必须通过双亲结点
- 由于结构严密,层次命令趋于程序化