第一正規化(1NF)

如果該關係的所有 attributes 的域都是原子的,則給定資料庫中的關係(或關係模式)在 first normal form 中。如果該域的所有元素都被視為不可分割的單元,則域是原子的。假設關係 employee ,屬性 name,那麼關係不在 first normal form 中,因為 attribute name 的域元素可以分為 first namelast name

簡而言之,如果一個關係具有複合屬性 ,那麼它不是第一個正常形式。假設我們有以下關係:

EMPID 名字 薪水 位置
DEPTX-101 約翰 工匠 12000 中間
Depty-201 Carolyne 威廉姆斯 18900 經理

第一行的 EmpId 可以分為:Deptx(用於識別部門)和 101,是組織內分配的唯一編號。顯然,屬性 EmpId 的域不是原子的,因此我們的關係不在於 first normal form

Disadvantes 面臨:

  1. 當使用這樣的員工身份時,可以通過編寫將 EmpId 的結構分解為 Deptx101 的程式碼來找到員工的部門,這需要額外的程式設計。資訊也在程式中而不是在資料庫中編碼。
  2. 假設某個特定員工必須更改部門,那麼屬性 EmpId 必須在使用它的任何地方進行更新。

通過將它分為以下兩個關係,我們可以使我們的關係滿足時間 18:

關係 1

EMPID 名字 部門
101 約翰 工匠 DEPTX
201 Carolyne 威廉姆斯 Depty

關係 2

EMPID 薪水 位置
101 12000 中間
201 18900 經理

現在,如果我們必須更改部門,我們必須在關係 1 中只執行一次,現在確定部門也更容易。