國家安全情報人員考試五等考試-資訊組資料處理大意108 年第 36 題單選題
若兩關聯表(Relation)S1(A,B,C,D)及S2(E,F,G,H)中,存在以下兩個功能相依(Functional Dependency)FD1:{C}{D}及FD2:{F}{G},下列敘述何者正確?
AS1的正規式(Normal Form)是2NF正確答案
BS1的正規式(Normal Form)是3NF
CS2的正規式(Normal Form)是2NF
DS2的正規式(Normal Form)是3NF
A正確答案
判斷正規化需先找出主鍵。本題依國考慣例假設前兩欄位為複合主鍵,S1 存在遞移相依故為 2NF,S2 存在部分相依故僅為 1NF。
為什麼答案是 A
依據關聯表命名慣例,假設 S1 的複合主鍵為 (A,B)。功能相依 {C}→{D} 代表非主鍵屬性 (C) 決定了另一個非主鍵屬性 (D),這稱為「遞移相依」。因為消除了部分相依但存在遞移相依,故 S1 的最高正規式為 2NF。
載入中…
完整詳解
Pro · 無限重點 判斷正規化需先找出主鍵。本題依國考慣例假設前兩欄位為複合主鍵,S1 存在遞移相依故為 2NF,S2 存在部分相依故僅為 1NF。
假設 S1 主鍵(A,B),{C}→{D}為非主鍵決定非主鍵(遞移相依),停在2NF。假設 S2 主鍵(E,F),{F}→{G}為相依於部分主鍵(部分相依),僅1NF。
逐選項分析
A✓ 正確
依據關聯表命名慣例,假設 S1 的複合主鍵為 (A,B)。功能相依 {C}→{D} 代表非主鍵屬性 (C) 決定了另一個非主鍵屬性 (D),這稱為「遞移相依」。因為消除了部分相依但存在遞移相依,故 S1 的最高正規式為 2NF。
B✕
3NF 的核心要求是「消除遞移相依」(即非主鍵屬性不能相依於其他非主鍵屬性)。S1 存在 {C}→{D} 的遞移相依,因此不符合 3NF 的標準。
C✕ 陷阱
假設 S2 的複合主鍵為 (E,F)。功能相依 {F}→{G} 代表非主鍵屬性 (G) 僅相依於複合主鍵的一部分 (F),這稱為「部分相依」。只要存在部分相依,就違反了 2NF 的規定,因此 S2 僅停留在 1NF。
D✕
如 C 選項所述,S2 因為存在 {F}→{G} 的部分相依,連 2NF 的門檻都無法跨過,自然不可能達到 3NF 的標準。
資料庫正規化 (Normalization) 核心判斷
| 正規式 | 核心要求 | 需消除的相依性 | 白話文理解 |
|---|
| 1NF | 屬性值不可分割 (Atomic) | 無 | 每個格子只能放單一值 |
| 2NF | 滿足 1NF | 部分相依 (Partial Dependency) | 非主鍵必須依賴『整個』主鍵,不能只依賴一半 |
| 3NF | 滿足 2NF | 遞移相依 (Transitive Dependency) | 非主鍵只能依賴主鍵,不能依賴其他非主鍵 |
| BCNF | 滿足 3NF | 主鍵屬性的部分相依 | 決定者 (Determinant) 必須是候選鍵 |
本題最大的陷阱在於「沒有標示主鍵 (Primary Key)」。在國考資料庫題型中,若遇到未標示底線的關聯表,考生必須具備「假設主鍵」的敏感度。通常依字母順序,假設前兩個欄位為複合主鍵,才能順利判斷出部分相依與遞移相依。