首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

数据库的三种模型

前言

数据模型是数据库系统的核心,本文简要介绍三种主要的数据库模型。

一、格式化模型

格式化模型是层次模型和网状模型的统称

1.层次模型

层次数据模型的概念

层次模型用属性结构来表示各类实体以及实体间的联系

层次模型的数据结构

特点:

结点的双亲是唯一的;

只能直接处理一对多的实体联系;

每个记录类型可以定义一个排序段,也称码字段;

任何记录值只有按其路径查看时才能显出它的全部意义;

没有一个子女记录值能够脱离双亲记录值而独立存在。

层次模型的数据操纵

查询

插入

删除

更新

层次模型的完整性约束

无对应的双亲结点值就不能插入子女结点;

如果删除双亲结点则相应的子女节点值也被同时删除;

更新操作时,应更新所有相应记录,以保证数据的一致性。

层次模型的优缺点

优点

层次模型的数据结构比较简单清晰;

查询效率高,性能优于关系模型,不低于网状模型;

层次数据模型提供了良好的完整性支持。

缺点

结点之间的多对多联系表示不自然;

对插入和删除操作的限制多,应用程序的编写比较复杂;

查询子女结点必须通过双亲结点;

层次命令趋于程序化;

2.网状模型

网状模型的概念

网状数据库系统采用网状模型作为数据的组织方式

典型代表是DBTG系统:

■亦称CODASYL系统

■20世纪70年代由DBTG提出的一个系统方案

必实际系统

■Cullinet Software公司的IDMS

■Univac公司的DMS1100

■Honeywell公司的IDS/2

■HP公司的IMAGE

网状模型的数据结构

满足下面两个条件的基本层次联系的集合:

允许一个以上的结点无双亲;

一个结点可以有多于一个的双亲。

表示方法(与层次数据模型相同)

实体型:用记录类型描述

每个结点表示-一个记录类型(实体)

属性:用字段描述

每个记录类型可包含若千个字段

联系:用结点之间的连线表示记录类型(实体)之间的一对多的父子联系

网状模型的操纵与完整性约束

网状数据库系统(如DBTG)对数据操纵加

了一些限制,提供了–定的完整性约束

■码:唯一标识记录的数据项的集合

■一个联系中双亲记录与子女记录之间是一-对多联系

■支持双亲记录和子女记录之间某些约束条件

网状模型的优缺点

优点

a.能够更为直接地描述现实世界,如一个结点可以有多个双亲

b.具有良好地性,存取效率较高

缺点

a.结构比较复杂,而且随着应用环境地扩大,数据库就变得越来越复杂,不利于最终用户掌握

b.DDL、DML语言复杂,用户不容易使用

c.记录之间联系是通过存取路径实现地,用户必须了解系统结构地细节

3.网状模型与层次模型的区别

■网状模型允许多个结点没有双亲结点

■网状模型允许结点有多个双亲结点

■网状模型允许两个结点之间有多种联系(复合联系)

■网状模型可以更直接地描述现实世界

■层次模型实际上是网状模型的一一个特例

二、关系模型

关系模型的概念

关系数据库系统采用关系模型作为数据的组织方式

心970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型

计算机厂商新推出的数据库管理系统几乎都支持关系模型

关系模型的数据结构

在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

关系(Relation)

●一个关系对应通常说的一张表

元组(Tuple)

●表中的一行即为一个元组

属性(Attribute )

●表中的一列即为一个属性,给每–个属性起一个名称即属性名

主码(Key)

●也称码键。表中的某个属性组,它可以唯一 确定一个元组

域(Domain )

●是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。

分量

●元组中的一一个属性值。

关系模式 ●对关系的描述 关系名(属性1,属性2,,.属性n) 学生(学号,姓名,年龄,性别,系名,年级)

关系必须是规范的,满足一定的约束条件

最基本的约束条件:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表

关系模型的操纵与完整性约束

数据操作是集合操作,操作对象和操作结果都是关系

■查询

■插入

■删除

■更新

存取路径对用户隐蔽,用户只要指出“千什么 ’,不必详细说明‘ “怎么干”

关系的完整性约束条件

■实体完整性

■参照完整性

■用户定义的完整性

关系数据库的优缺点

优点

1.建立在严格的数学概念的基础上

2.概念单一

●实体和各类联系都用关系来表示

●对数据的检索结果也是关系

3.关系模型的存取路径对用户透明

●具有更高的数据独立性,更好的安全保密性

●简化了程序员的工作和数据库开发建立的工作

缺点

1.存取路径对用户透明,查询效率往往不如格式化数据模型

2.为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度

总结

数据库领域当前的研究工作都是以关系方法为基础,所以大家学习数据库的时候应该把重点放在关系数据库上。

------------END-----------

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210117A05E6D00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券