在格式化模型中, 实体用记录表示, 实体的属性对应记录的数据项 (或字段).
层次模型所满足的两个条件:
有且只有一个结点没有双亲结点, 这个结点称为根结点.
根节点以外的其他结点有且只有一个双亲结点
在层次模型中, 每个结点表示一个记录类型, 每个记录类型可包含若干个字段, 记录类型描述的是实体, 字段描述的是实体的属性.
层次数据模型的存储结构
邻接法:
按照层次树前序穿越的顺序把所有记录值依次邻接存放, 即通过物理空间的位置相邻来体现层次顺序.
链接法:
用指针来反映数据之间的层次联系.
层次模型的优点:
层次模型的数据结构比较简单清晰
层次数据库的查询效率高 (因为层次模型中记录之间的联系用有向边表示, 这种联系在 DBMS 中用指针来实现, 当要存取某个结点的记录值, DBMS 就沿着这一条路径很快找到该记录值, 所以层次数据库的性能优于关系系数据库, 不低于网状数据库)
层次数据模型提供了良好的完整性支持
层次模型的缺点:
现实世界中很多联系是非层次性的, 如结点之间具有多对多联系
一个结点具有多个双亲等, 对插入删除操作的限制比较多, 因此应用程序的编写比较复杂
查询子女结点必须通过双亲结点
由于结构严密, 层次命令趋于程序化
层次模型对具有一对多的层次联系的部门描述非常自然, 直观, 容易理解. 这是层次数据库的突出优点.
来源: https://www.cnblogs.com/sunbr/p/11746835.html