数据模型
1.数据模型的基本概念
(1)数据模型就是对现实世界事物的抽象。
(2)数据库中的模型要满足三个条件:
①能比较真实的模拟出现实世界
②容易被人所理解
③在计算机系统上容易实现
(3)数据模型是数据库的核心和基础
2.数据模型的分类
(1)概念模型
概念模型也被称作信息模型,它是按照用户的观点来对数据和信息建模,用于数据库的设计。(现实世界到概念模型这部分工作由数据库设计人员来进行完成)
(2)逻辑模型
逻辑模型主要包括层次模型,网状模型,关系模型,面向对象数据模型。它是按照计算机系统的观点来对数据建模,用于DBMS实现(概念模型到逻辑模型这部分也是由数据库设计人员完成,可能会用到一些数据库设计工具)
(3)物理模型
物理模型是对数据最底层的抽象,描述数据在磁盘上的存取和表示方式(逻辑模型到物理模型这部分是由DBMS完成)
3.常见的逻辑模型
(1)层次模型
层次模型是用树状结构来表示各类实体和实体之间的关系。
层次模型具有如下特点
1.有且只有一个结点没有双亲结点, 这个结点称为根结点
2.根以外的其它结点有且只有一个双亲结点
3.结点的双亲是唯一的
4.只能直接处理一对多的实体联系
5.任何记录值只有按其路径查看
6.没有一个子女记录值能够脱离双亲记录值而独立存在
层次模型的完整性约束条件
*无相应的双亲结点值就不能插入子女结点值
*如果删除双亲结点值,则相应的子女结点值也被同时删除
*更新操作时,应更新所有相应记录,以保证数据的一致性
层次模型的优缺点
优点
层次模型的数据结构比较简单清晰
查询效率高, 性能优于关系模型, 不低于网状模型
层次数据模型提供了良好的完整性支持
缺点
结点之间的多对多联系表示不自然
对插入和删除操作的限制多,应用程序的编写比较复杂
查询子女结点必须通过双亲结点
层次数据库的命令(语言)趋于程序化
(2)网状模型
网状数据库系统采用网状结构来表示各类实体以及实体间的联系。
网状模型具有如下特点:
允许多个结点没有双亲结点
允许一个结点有多个双亲结点
允许两个结点之间有多种联系
•要为每个联系命名并指出与该联系有关的双亲记录和子女记录
网状模型的优缺点
优点
能够更为直接地描述现实世界, 如一个结点可以有多个双亲;
具有良好的性能, 存取效率较高。
缺点
结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越
复杂,不利于最终用户掌握;
DDL、 DML语言复杂,用户不容易使用;
记录之间联系是通过存取路径实现的,应用程序必须选择存取路径,
加重了程序员的负担
(3)关系数据库模型
关系数据库系统采用关系模型作为数据的组织方式。
在用户观点下,关系模型中数据的逻辑结构是一张二维表。关系数据库不允许表中有表
关系模型的优缺点
优点
建立在严格的数学概念的基础上
概念单一
实体和各类联系都用关系来表示
对数据的检索结果也是关系
关系模型的存取路径对用户透明
具有更高的数据独立性, 更好的安全保密性
简化了程序员的工作和数据库开发建立的工作
缺点
存取路径对用户透明, 查询效率往往不如格式化数据模型
为提高性能, 必须对用户的查询请求进行优化, 增加了开发数据库管理系统的难度
数据库中的数据是按照一定的结构(数据模型)来组织...
问题1:
数据模型按不同的应用层次分成三种类型:分别是概念数据模型、逻辑数据模型、物理数据模型。
1、概念数据模型(Conceptual Data Model):简称概念模型,是面向数据库用户的实现世界的模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据管理系统(Database Management System,简称DBMS)无关。概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。
2、逻辑数据模型(Logical Data Model):简称数据模型,这是用户从数据库所看到的模型,是具体的DBMS所支持的数据模型,如网状数据模型(Network Data Model)、层次数据模型(Hierarchical Data Model)等等。此模型既要面向用户,又要面向系统,主要用于数据库管理系统(DBMS)的实现。
3、物理数据模型(Physical Data Model):简称物理模型,是面向计算机物理表示的模型,描述了数据在储存介质上的组织结构,它不但与具体的DBMS有关,而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有起对应的物理数据模型。DBMS为了保证其独立性与可移植性,大部分物理数据模型的实现工作又系统自动完成,而设计者只设计索引、聚集等特殊结构。
在概念数据模型中最常用的是E-R模型、扩充的E-R模型、面向对象模型及谓词模型。在逻辑数据类型中最常用的是层次模型、网状模型、关系模型。
数据库领域采用的数据模型有层次模型、网状模型和关系模型,其中应用最广泛的是关系模型。
层次模型:它的特点是将数据组织成一对多关系的结构。
层次结构采用关键字来访问其中每一层次的每一部分。
优点:
存取方便且速度快
结构清晰,容易理解
数据修改和数据库扩展容易实现
检索关键属性十分方便
缺陷:
结构呆板,缺乏灵活性
同一属性数据要存储多次,数据冗余大(如公共边)
不适合于拓扑空间数据的组织 网状模型用连接指令或指针来确定数据间的显式连接关系,是具有多对多类型的数据组织方式 优点:
能明确而方便地表示数据间的复杂关系
数据冗余小
缺陷:
网状结构的复杂,增加了用户查询和定位的困难。
需要存储数据间联系的指针,使得数据量增大
数据的修改不方便(指针必须修改)
关系数据库模型是以记录组或数据表的形式组织数据,以便于利用各种地理实体与属性之间的关系进行存储和变换,不分层也无指针,是建立空间数据和属性数据之间关系的一种非常有效的数据组织方法
优点:
结构特别灵活,满足所有布尔逻辑运算和数学运算规则形成的查询要求
能搜索、组合和比较不同类型的数据
增加和删除数据非常方便
缺陷:
数据库大时,查找满足特定关系的数据费时
对空间关系无法满足
问题2:
删除“学生”表性别为“男”的记录。
查询学生表(列姓名,总分),条件是总分大于85分的记录
数据库常见的数据模型有哪三种?
1、层次模型:
①有且只有一个结点没有双亲结点(这个结点叫根结点)。
②除根结点外的其他结点有且只有一个双亲结点。
层次模型中的记录只能组织成树的集合而不能是任意图的集合。在层次模型中,记录的组织不再是一张杂乱无章的图,而是一棵"倒长"的树。
2、网状模型 :
①允许一个以上的结点没有双亲结点。
②一个结点可以有多个双亲结点。
网状模型中的数据用记录的集合来表示,数据间的联系用链接(可看作指针)来表示。数据库中的记录可被组织成任意图的集合。
3、关系模型:
关系模型用表的集合来表示数据和数据间的联系。
每个表有多个列,每列有唯一的列名。
全部评论