Data Modeling
- Understand the requirements:充分理解和分析业务需求。
- Build a Conceptual Model:识别业务中的实体、事物或概念以及它们之间的关系。
- Build a Logical Model:生成一个数据模型或数据结构用以存储数据。
- Build a Physical Model:在这个模型中。你需要具备由数据库技术支持的确切的数据类型。列默认值、表主键。以及其他对象,如视图、存储过程触发器等等
三种数据模型

Conceptual Model(概念模型)
-
作用:表示业务中的实体、事物或概念以及它们之间的关系。
-
可视化方法
1.Entity Relationship(实体关系-ER)
示意图:

2.Unified Modeling Language(标准建模语言-UML)
Logical Model(逻辑模型)
- 作用:逻辑模型为我们的概念模型增加了更多细节,这样我们见乎了解什么结构或什么表需要用来存储数据。
- 示意图

Physical Model(实体模型)
- 作用:在数据库中进行建模

Normalization(标准化)
- 作用:审查数据库设计,防止数据重复预定义。
- First Normal Form(第一范式):每个单元格都应该有单一值,且不能出现重复列。
注意:关系型数据库只有“一对一”,“一对多”关系,没有“多对多”关系,如果需要实现两个表的“多对多”关系,则需要使用链接表,拆分成两段“一对多”关系。
示意图:courses表的tags违反了第一范式,修改如下

- Second Normal Form(第二范式):
1、满足第一范式
2、每张表都应该有一个单一目的。换句话说,它应该只能代表一种且仅有一种实体类型,而表中的每一列都应该用来描述那个实体。
示意图:courses表中的instructors违反了第二范式,修改如下

- Third Normal Form(第三范式):
1、满足第二范式
2、表中的列不应该派生自其他列
举例:在customers表中,已经有first_name和last_name,就不能再出现full_name,违反了第三范式

Don’t jump into creating tables!
本文详细介绍了数据库设计的三个关键步骤:理解业务需求、建立概念模型、构建逻辑和物理模型。概念模型关注实体及它们的关系,逻辑模型增加细节,而物理模型涉及数据库的实际实现。规范化是确保数据质量的重要过程,包括第一范式(消除重复列),第二范式(单一目的表)和第三范式(避免列依赖)。遵循这些原则能有效防止数据冗余并优化数据库性能。

1003

被折叠的 条评论
为什么被折叠?



