数据库模型-数据结构-网状模型
《数据库模型-数据结构-网状模型》要点: 我们上次聊了数据结构的层次模型,本日看下结构的网状模型. 网状模型:用网络结构表现实体类型及其实体之间联系的模型,顾名思义,一个事物和另外的几个都有联系这样构成一张网状图. 1、条件特征(1)容许有一个以上的节点无双亲. (2)至少有一个节点可以有多于一个的双亲. 网状模型中每个结点表示一个记录型(实体),每个记录型可包括若干个字段(实体的属性),结点间的连线表示记录类型(实体)间的父子关系. 从定义可以看出,层次模型中子结点与双亲结点的联系是唯一的,而在网状模型中这种联系可以不惟一.因此,在网状模型中要为每个联系命名,并指出与该联系有关的双亲记录和子记录. 2、表示办法:实体型:用记录类型描述 每个结点表述一个记载类型(实体); 属性:用字段描述,每个记录类型包括若干个字段; 联系:用结点之间的连线表现记录类型(实体)之间的一对多的父子关系; 网状模型与条理模型的区别: 网状模型:允很多个结点没有双亲结点; 容许结点有多个双亲; 允许两个结点有多种接洽(复合接洽); 可以更直接的去描写现实世界; 要为每个联系定名(L1、L2),并指出该联系相关的双亲记录和子女记录. 3、多对多在网状模型的表现用网状模型表现多对多的关系 办法:将多对多直接分解成一对多的联系 4、 举例:学生选课模子 它由3个数据项组成,即学号、课程号、成绩,表现某个学生选修某一门课程及其成绩. 5、把持网状模型的数据操作主要包括查询、插入、删除和更新: 插入:插入尚未肯定双亲结点值的子结点值; 删除:只允许删除双亲结点值.如可删除一个教研室,而该科研室所有教师的信息仍保存在数据库中. 修改:可直接表示非树状结构,而无须像层次模型那样增加冗余结点,因此修改操作时只必要指定更新记录即可. 网状数据系统(DBTG)对数据加了一些限制,提供了必定的完整性约束: 码:唯一标识记载的数据项集合; 一个联系中双亲记录和后代记录是一对多的关系; 支持双亲记录和后代记录之间的某些约束性条件; 症结:实现记录联系; 常用办法:单向、双向、环向、向首链接; 6、 优缺点网状数据模型的长处如下: (1) 能够更为直接地描述现实客观世界,可表现实体间的多种复杂联系. (2) 具有优越的性能,存取效率较高. 网状数据模型的毛病如下: (1) 结构比拟复杂,其数据定义语言(DDL)、数据操作语言(DML)复杂,用户不容易使用.而且应用环境越大,数据库的结构就变得越复杂,不利于最终用户掌握. (2) 数据独立性差,由于实体间的联系本质上是通过存取路径表示的,因此应用程序在拜访数据时要指定存取路径. 以上,相识下~ 欢迎参与《数据库模型-数据结构-网状模型》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |