跳轉到內容

DBMS/資料庫設計

來自華夏公益教科書
實體
它僅僅代表資料庫的欄位,例如:

僱員

實體集
不同欄位的集合
關係
關係集
屬性可能值的集合稱為

屬性的域,例如:屬性婚姻狀況的域有四個值:單身、已婚、離婚或喪偶。

屬性月份的域有十二個值,從一月到十二月。

關鍵屬性
對每個實體例項而言是

唯一的屬性(或屬性組合),例如:帳戶的帳戶號碼、僱員的僱員 ID 等。

屬性
例如:性別
組合屬性
關係的度
參與關係的實體型別的數量

資料庫

關係的基數
此的最小值和最大值

連線性稱為關係的基數,例如:一對一、一對多、多對多

弱實體
依賴於其他實體以其存在的實體,並且
doesn’t have key attribute (s) of its own e.g. : spouse of employee
識別關係
非識別關係
區分符

建模概念

  • 專業化
  • 泛化
  • 分類
  • 聚合

規範化

[編輯 | 編輯原始碼]

規範化是確定哪些屬性應該

be grouped together in a relation.The process of normalization was 

由 E.F. CODD 首次提出的。規範化是評估和修正關係模式以最小化資料冗餘,從而減少異常的過程。

第一正規化

[編輯 | 編輯原始碼]

根據 1NF 的規則,表中的屬性不能包含多個值。它應該只包含原子值。

第二正規化

[編輯 | 編輯原始碼]

第二正規化以**函式依賴**屬性為特徵。如果一個關係處於第一正規化,並且每個非關鍵屬性都完全且函式依賴於主鍵,則該關係處於第二正規化。

第三正規化

[編輯 | 編輯原始碼]

傳遞依賴:如果一個關係處於第二正規化,並且

no transitive dependencies exist.

假設 A、B 和 C 是關係 (R) 的三個屬性,那麼如果 A->B(B 依賴於 A)B->C(C 依賴於 B),那麼可以說“C”傳遞依賴於“A”。

Boyce-Codd 正規化 (BCNF)

[編輯 | 編輯原始碼]

BCNF 基於函式依賴,這些依賴考慮了關係中所有候選鍵。對於只有一個候選鍵的關係,第三正規化和 BCNF 是等效的。**當且僅當每個決定因素都是候選鍵時,關係才處於 BCNF。** 那麼什麼是決定因素?考慮以下函式依賴:A→B,其中 A 和 B 是關係 R 中的屬性。它表示 B 函式依賴於 A。這裡 A 被稱為決定因素,B 是依賴項。

BCNF 比 3NF 稍強。

第四正規化

[編輯 | 編輯原始碼]
刪除多值依賴

第五正規化

[編輯 | 編輯原始碼]

刪除任何剩餘的異常。在這個正規化中,我們分離語義相關的多個關係。

**異常**可能包括:插入異常刪除異常修改/更新異常。刪除任何剩餘的異常。在這個正規化中,我們分離語義相關的多個關係。

華夏公益教科書