无法分解为第三范式 (DB)
Trouble decomposing to 3rd Normal Form (DB)
我最近开始学习数据库,但我在这个特定部分遇到了困难。
我已经阅读了每个 Normal Form
的定义,但我似乎仍然无法理解。这是一个我无法正确解决的例子:
**R(A,B,C,D,E,F)**
A->B; B->CD; AD->E
解决方案:R1(*A*,B,E); R2(*B*,C,D); R3(*A*,*F*)
我不明白为什么 R3
是这样的
R3是为了保证是2nd Normal Form,没有更新异常。 R1 中的 F 会导致 A、B、E 的重复行,其中 A 有多个 F 值。B 和 E 值可能不明确或完全冗余。
我最近开始学习数据库,但我在这个特定部分遇到了困难。
我已经阅读了每个 Normal Form
的定义,但我似乎仍然无法理解。这是一个我无法正确解决的例子:
**R(A,B,C,D,E,F)**
A->B; B->CD; AD->E
解决方案:R1(*A*,B,E); R2(*B*,C,D); R3(*A*,*F*)
我不明白为什么 R3
是这样的
R3是为了保证是2nd Normal Form,没有更新异常。 R1 中的 F 会导致 A、B、E 的重复行,其中 A 有多个 F 值。B 和 E 值可能不明确或完全冗余。