LONGEPASS
Q66.

有關於資料庫的正規化,以下的敘述那些為正確?

電腦軟體設計共同科目 · 乙級 · Q66

難易度分析

4 / 5

本題採複選形式,要求考生精確區分多個正規化階段的定義與包含關係,且需判別非鍵屬性相依性等核心概念,對理論掌握度的要求較高。

正確答案 (複選):③, ④

  • ③ 所有符合BCNF 的表格必定符合3NF:BCNF(Boyce-Codd 正規化形式)的條件比 3NF 更嚴格,要求每個決定因素(Determinant)都必須是超鍵(Superkey),因此符合 BCNF 的表格必定符合 3NF。
  • ④ 如果非鍵屬性(Non-Key Attribute)之間具有功能相依性,則無法達到3NF:3NF 要求消除非鍵屬性之間的功能相依性(Transitive Dependency),若存在此類相依性即表示違反 3NF,必須進一步分解至 BCNF 或更高正規化形式。

錯誤選項解析

  • ① 1NF 允許複合屬性(Composite),但不允許多值屬性(Multi-Valued):1NF(第一正規化)要求所有屬性均為原子值(Atomic Value),既不允許複合屬性(Composite Attribute)也不允許多值屬性(Multi-Valued Attribute),兩者皆須拆解為單一值欄位。
  • ② 所有符合3NF 的表格都可以分解成為符合BCNF 的表格:3NF 分解為 BCNF 時可能無法同時保持相依性保留(Dependency Preservation),某些情況下會產生遺失功能相依性的問題,因此並非所有 3NF 表格都能完美分解為 BCNF。
Learning Tip

"正規化層級關係為 1NF ⊃ 2NF ⊃ 3NF ⊃ BCNF ⊃ 4NF ⊃ 5NF,越後面的形式條件越嚴格。常考陷阱在於混淆 3NF 與 BCNF 的差異:3NF 允許「決定因素為超鍵」或「被決定項為主屬性」任一條件成立,而 BCNF 僅接受「決定因素必須是超鍵」。實務上通常分解至 3NF 即可兼顧相依性保留與無損分解,過度正規化反而可能降低查詢效能。"

學員答題分佈

①1NF 允許複合屬性(Composite),但不允許多值屬性(Multi-Valued)0%
②所有符合3NF 的表格都可以分解成為符合BCNF 的表格0%
③所有符合BCNF 的表格必定符合3NF0%
④如果非鍵屬性(Non-Key Attribute)之間具有功能相依性,則無法達到3NF0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目