阿摩線上測驗 登入

申論題資訊

試卷:100年 - 臺北市立松山家商100學年度第1次教師甄選計概試題#46811
科目:教甄◆電腦科專業
年份:100年
排序:0

題組內容

四、簡答題(15%)

申論題內容

1.請解釋資料庫正規化(Normalization)中何謂 1NF、2NF、3NF?(6%)

詳解 (共 1 筆)

詳解 提供者:澐

第一正規化(1NF)

指在資料表中的所有記錄之屬性內含值都是基元值(Atomic (Atomic Value)。亦即無重覆項目群。

1.每一個欄位只能有一個基元值(Atomic) (Atomic)即單一值。 例如:課程名稱欄位中不能存入兩科或兩科以上的課程名稱。

2. 沒有任何兩筆以上的資料是完全重覆。 3.資料表中有主鍵, 而其他所有的欄位都相依於「主鍵」。 例如1:姓名與性別欄位都相依於「學號」欄位。

在完成了第一正規化之後,是否發現在資料表中產生許多重複的資 料。如此, 不但浪費儲存的空間, 更容易造成新增、修改及刪除資料時的 異常狀況,說明如下。

(1) 新增異常檢查(Insert Anomaly) (Insert Anomaly)無法先新增課程資料,如「課程代碼」及「課程名稱」,要等選課之後,才能新增。 原因:以上的新增動作違反「實體完整性規則」,因為,主鍵或複合主鍵不可以為空值 NULL。

(2)修改異常檢查(Update Anomaly) (Update Anomaly)


第二正規化的規則

如果資料表符合以下的條件, 我們說這個資料表符合第二階正規化的形 式 (Second Normal Form, (Second Normal Form, 簡稱 2NF):

符合1NF 每一非鍵屬性(如:姓名、性別…)必須「完全相依」於主鍵(學號);即 不可「部分功能相依」於主鍵。 換言之,「部分功能相依」只有當「主鍵」是由「多個欄位」組成 時才會發生(亦即複合主鍵),也就是當某些欄位只與「主鍵中的部分欄 位」有「相依性」, 而與另一部分的欄位沒有相依性。


第三正規化的規則

如果資料表符合以下條件, 我們就說這個資料表符合第三階正規化的形 式 (Third Normal Form, (Third Normal Form, 簡稱 3NF):

符合2NF 各欄位與「主鍵」之間沒有「遞移相依」的關係。 【如何找遞移相依呢? 】 若要找出資料表中各欄位與「主鍵」之間的遞移相依性, 最簡單的方法 就是從左到右掃瞄資料表中各欄位有沒有『與主鍵無關的相依性』存 在。

可能的情況如下:

1.如果有存在時,則代表有「遞移相依」的關係

2. 如果有不存在時,則代表沒有「遞移相依」的關係


BCNF正規化

是由Boyce和Codd於1974年所提出來的3NF的改良式。其條件比 3NF更加嚴苛。因此每一個符合BCNF的關聯一定也是3NF。 對於大部分資料庫來說, 通常只需要執行到第三階段的正規化就足夠了。 【適用時機】 如果資料表的「主鍵」是由「多個欄位」組成的, 則必須再執行 BoyceCodd 正規化。