数据库三种模型的优缺点

层次模型

优点:

  1. 数据结构简单清晰。
  2. 因为记录之间的联系用有向边表示,这种联系在DBMS中通常使用指针实现,查询效率高。层次模型数据库性能优于关系数据库,不低于网状数据库。
  3. 提供了良好的完整性支持。进行插入操作时,如果没有对应的双亲结点就不能插入它的子女结点值。进行删除操作时,如果删除双亲结点,则相应的子女结点值也将被同时删除。

原文:https://blog.csdn.net/qq_38234015/article/details/89082854

缺点:

  1. 现实世界中的很多联系是非层次性的。如果结点之间具有多对多联系,不再适合使用层次模型表示。如果一个子女结点确实具有多个双亲结点,使用层次结构模型表示的时候就会出现大量的冗余,且操作复杂。
  2. 查询子女结点必须通过双亲结点。
  3. 由于结构严密,层次命令趋于程序化。

网状模型

优点:

  1. 能够更为直接地表示现实世界。
  2. 具有良好的性能,存取效率高。

缺点:

  1. 结构复杂,伴随应用环境的扩大,数据结构变得越来越复杂,不利于最终用户掌握。
  2. 网状模型的数据定义语言和数据管理语言复杂。
  3. 由于记录之间的联系通过存取路径实现,应用程序在访问数据的时候必须选择恰当的存取路径,因此用户必须了解系统结构的细节,导致加重了编写应用程序的负担。

关系模型

优点:

  1. 关系模型建立在严格的数学概念的基础之上。
  2. 关系模型概念单一。无论是实体还是实体之间的联系都用关系来表示。对数据的检索和更新结果也是基于关系(表)的。所以,数据结构简单清晰,用户易懂易用。
  3. 关系模型的存取路径对用户透明,从而具有较高的数据独立性,更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。

缺点:

  1. 由于存取路径对用户是透明的,查询效率往往不如格式化数据模型。
  2. 为了提高系统性能,数据库管理系统必须对用户的查询请求进行优化。
原文地址:https://www.cnblogs.com/cheflone/p/13637008.html