软考-3.1三级模式-数据库设计-数据模型
前言
内容:
- 三级模式
- 数据库设计
- 数据模型
- 数据模型三要素
- E-R模型
- 关系模型
- 两种模型之间的转换
中论
三级模式-两级映像
自上而下:
三级模式
-
外模式(子模式、用户模式):某个或某几个用户所看到的数据库的
数据视图
,是与某一应用有关的数据的逻辑表示。用户可以用外模式描述语言来表述和定义对应的用户的数据,也可以利用数据操纵语言(DML)来对这些数据记录进行描述和定义DML:数据操纵语言,比如增、删、改、查,对数据库进行一些基本操作。
-
模式(概念模式、逻辑模式):是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的
全局视图
,它由数据库管理系统提供的数据模式描述语言(DDL)来描述和定义DDL:数据模式定义语言。比如创建、修改、删除表操作,用来定义或者改变表的结构。
-
内模式(存储模式、物理结构):是数据库中全体数据的内部表示或者底层描述,描述了数据在存储介质上的存储方式和物理结构。
一个数据库系统中,只有一个唯一的数据库。
两级映像:保证逻辑数据独立性和物理数据独立性
外模式-模式映像(逻辑数据独立性):视图和基本表之间的映射,存在于概念级和外部级之间,若表中数据发生了修改,只需要修改此映射,无需修改应用程序就可以保持外模式不变(仍旧是某个记录)。
模式-内模式映像(物理数据独立性):基本表和物理存储文件之间的映射,存在于概念级和内部级之间,若修改了数据存储方式,只需要修改此映射,而不需要去修改应用程序就可以保持模式不变(仍旧是某个表)。
数据库设计
-
需求分析:分析数据存储要求。产出:数据流图、数据字典、需求说明书。
-
概念结构设计:设计E-R图,包括设计分E-R图、合并E-R图。产出:E-R图。
E-R图合并时可能会有3种冲突
- 属性冲突
- 命名冲突
- 结构冲突
-
逻辑结构设计:将E-R图转换成关系模式。
-
物理设计
-
数据图实施阶段
-
数据库运行和维护阶段
数据模型
数据模型三要素:数据结构、数据操作、数据的约束条件
E-R模型
E-R模型描述概念数据模型
- 椭圆:属性,通常没有属性
- 长方形:实体,长方形内俩竖线表示
弱实体
- 菱形:联系,联系的两端填写联系类型
术语:
- 实体:客观存在并可相互区别的事物。可以是具体的人、事、物或者抽象概念。
- 弱实体和强实体:弱实体依赖于强实体的存在而存在。
- 实体集:相同类型和共享相同属性的实体的集合,比如学生、课程
- 属性:实体所具有的特征。
- 属性分类:简单属性、复合属性;单值属性、多值属性。
- 域:属性的取值范围
- 码:唯一标识实体的属性集
- 联系:事物内部以及事物之间的联系
- 联系类型:一对一、一对多、多对多
关系模型
关系模型中的数据逻辑结构是一张二维表。
模型转换
主要指E-R模型转换成关系模型
- 每一个实体都对应一个关系模式
- 联系的转化
- 一对一,联系可以放到任意两端的实体中,作为一个属性,也可以转换为一个单独的关系模式
- 一对多,联系可以单独作为一个关系模式,也可以在N端加入1端实体的主键
- 多对多:联系必须作为一个单独的关系模式,其主键是M端和N端的联合主键
后记
不要同情自己,同情自己是卑劣懦夫干的勾当。
———— 树上春树《挪威的森林》