-
E-R(Entity-Relationship)概念模型
(1) 广泛用于__概念模型__的设计
(2) 仅表示现实世界中各个事物之间的联系,不涉及计算机中的表示
(3) 有了E-R模型,可以很方便的转换为具体的DBMS所支持的数据模型
(4) 包括三个部分:实体、属性和实体间的联系
-
实体
(1) 客观存在的可以相互区别的事物,例如一个学生、一本书、一次交易……
(2) 实体集:具有同类特征的个体的集合,例如一群学生们
(3) 实体型:为了描述一个实体集,需要用 __实体名+表征实体的多个特征的集合__描述,称为实体型
-
属性
(1) 实体具有的若干特征
(2) 标识符: 能够起标识作用的一个或一组属性(例如学生的学号属性)
-
实体间的联系
可以有三种类型:一对一、一对多、多对多
-
E-R图 (《数据库系统原理》, 周志逵,郭贵锁 P21)
(1) 包括三个基本成分:实体、联系、属性
(2) 实体:矩形框
属性:椭圆框 联系:菱形框
-
数据模型
(1) 传统的数据模型
1° 层次模型
2° 网状模型
3° 关系模型
(2) 面向对象的数据模型:不成熟
-
层次数据模型
(1) 树形结构,每个结点有若干个儿子,只有一个父亲
(2) 父节点到子节点之间表示记录间__一对多__的关系
(3) 任何一个给定的记录值只有按照其路径查看时,才能显出它的全部意义,没有一个子女记录值能够脱离双亲记录值而独立存在
(3) __记录__是层次模型中存取数据的基本单位,由若干个字段组成
(4) 优点:存取效率高
(5) 缺点:只能表示一对多联系,
-
网状数据模型
(1) 和层次模型的区别
1° 一个结点可以有多个父节点
2° 一个结点也可以没有父节点
(2) 处理多对多m:n联系的方式
引入“系”的概念,中间添加一个联结记录,一个系代表1:m,另一个系代表1:n,两个系之间靠联结记录联结
-
关系数据模型
(1) 二维表结构
(2) 基本概念
关系:一张二维表
属性:一个关系有很多列,每一列称为一个属性
域:属性的取值范围
元组:每一行,代表实体集中的一个个体
键:标识一个元组的一个或多个属性
(3) 关系模型中,实体间的联系是通过不同关系中的同名属性实现的
(4) 关系模型相比层次模型和网状模型的__优点__
1° 数据结构简单
2° 层次模型和网状模型的数据语言包括__数据定义和数据操纵语言__,而关系模型可以将两者合为一体
3° 数据独立性高
4° 坚实的理论基础