DBMS/数据库设计
外观
< DBMS
- 实体
- 它仅仅代表数据库的字段,例如:
雇员
- 实体集
- 不同字段的集合
- 关系
- 关系集
- 域
- 属性可能值的集合称为
属性的域,例如:属性婚姻状况的域有四个值:单身、已婚、离婚或丧偶。
属性月份的域有十二个值,从一月到十二月。
- 关键属性
- 对每个实体实例而言是
唯一的属性(或属性组合),例如:帐户的帐户号码、雇员的雇员 ID 等。
- 属性
- 例如:性别
- 组合属性
- 关系的度
- 参与关系的实体类型的数量
数据库
- 关系的基数
- 此的最小值和最大值
连接性称为关系的基数,例如:一对一、一对多、多对多
- 弱实体
- 依赖于其他实体以其存在的实体,并且
doesn’t have key attribute (s) of its own e.g. : spouse of employee
- 识别关系
- 非识别关系
- 区分符
- 实体关系数据模型
- 德克萨斯大学奥斯汀分校的《数据建模导论》
建模概念
- 专业化
- 泛化
- 分类
- 聚合
规范化是确定哪些属性应该
be grouped together in a relation.The process of normalization was
由 E.F. CODD 首次提出的。规范化是评估和修正关系模式以最小化数据冗余,从而减少异常的过程。
根据 1NF 的规则,表中的属性不能包含多个值。它应该只包含原子值。
第二范式以**函数依赖**属性为特征。如果一个关系处于第一范式,并且每个非关键属性都完全且函数依赖于主键,则该关系处于第二范式。
传递依赖:如果一个关系处于第二范式,并且
no transitive dependencies exist.
假设 A、B 和 C 是关系 (R) 的三个属性,那么如果 A->B(B 依赖于 A)B->C(C 依赖于 B),那么可以说“C”传递依赖于“A”。
BCNF 基于函数依赖,这些依赖考虑了关系中所有候选键。对于只有一个候选键的关系,第三范式和 BCNF 是等效的。**当且仅当每个决定因素都是候选键时,关系才处于 BCNF。** 那么什么是决定因素?考虑以下函数依赖:A→B,其中 A 和 B 是关系 R 中的属性。它表示 B 函数依赖于 A。这里 A 被称为决定因素,B 是依赖项。
BCNF 比 3NF 稍强。
- 删除多值依赖
删除任何剩余的异常。在这个范式中,我们分离语义相关的多个关系。
**异常**可能包括:插入异常、删除异常或修改/更新异常。删除任何剩余的异常。在这个范式中,我们分离语义相关的多个关系。