范式及其规范化

1NF:

定义:

如果一个关系模式 \(R\) 的所有属性都是不可分的基本数据项,则 \(R \in 1NF\)

作用:

第一范式是对关系模式的最起码的要求。

2NF:

\(R \in 1NF\),且每一个非主属性完全函数依赖于任何一个候选码,作为 \(R \in 2NF\)
即在 \(1NF\) 的基础上,消除了部分函数依赖。

3NF:

关系模式 \(R<U,F>\) 中若不存在这样的码 \(X\),属性组 \(Y\) 及非主属性 \(Z\)(\(Z\notinY\)),使得 \(X\rightarrow Y\),(\(Y\notrightarrow X\)),\(Y\rightarrow Z\) 成立,则称 \(R<U,F>\in 3NF\)
即在 \(2NF\) 的基础上消除了传递函数依赖。

BCNF:

\(3NF\) 的基础上,不存在任何字段(主属性和非主属性)对任一候选关键字段的传递函数依赖。
\(1,2,3 NF\) 都强调非主属性,而 \(BCNF\) 包括主属性。排除了任何属性对码的传递依赖和部分依赖。

规范化:

基本思想:

逐步消除数据依赖中不合适的部分。

猜你喜欢

转载自www.cnblogs.com/whix/p/13179619.html