Logo
Section 1 / 10

什么是归一化?

在本节课中,我们将学习不同的规范化形式以及使用规范化技术的原因。

导入

什么是归一化?

在本节课中,我们将学习不同的规范化形式以及使用规范化技术的原因。

规范化应是数据库设计过程的一部分。然而,由于规范化过程与实体关系建模过程难以分离,因此应将这两种技术同时使用。

我们使用实体关系图(ERD)来提供组织数据需求和操作的宏观视图。这一过程通过迭代方式进行,包括识别相关实体、其属性以及它们之间的关系。

规范化过程则关注特定实体的特征,体现了实体关系图中实体的微观视图。

什么是规范化?

规范化是关系理论的一个分支,提供了设计方面的洞察。它是判断表中冗余程度的过程。规范化的目标包括:

  • 能够描述关系模式中冗余的程度。
  • 提供机制以转换模式,从而消除冗余。

规范化大量依赖于函数依赖理论。规范化理论定义了六种范式(NF)。每一种范式都要求模式满足一组依赖特性,且每种范式都对更新异常的存在或缺失提供了保证。这意味着范式级别越高,冗余越少,相应地,更新问题也越少。

范式

共有六种范式,但我们将仅讨论前四种,分别是:

  • 第一范式(1NF)
  • 第二范式(2NF)
  • 第三范式(3NF)
  • Boyce-Codd 范式(BCNF)

范式的实际应用

在商业和政府环境中的大多数实际设计项目,通常会从以往的设计、遗留系统模型等现有数据库设计中获取方案。这些项目非常关注设计方案的质量,并希望其能在长时间内保持稳定。现有的设计方案通过范式测试进行评估,实践中也会进行规范化处理,以确保最终设计质量高且数据冗余最少。


在下一课中,我们将详细讨论第一范式。

函数依赖

第一范式