选择语言
durumis AI 总结的文章
- 邏輯數據模型是將概念數據模型轉換為關係數據庫範式的過程,基於映射規則。
- 在關係數據庫中處理 1:1、1:N、N:M 關係的方式,以及建立中間表格的方法。文章還詳細說明了正規化的重要性, 以及三個正規化步驟(1NF、2NF、3NF)。
- 明確說明每個正規化步驟的目標和原則,特別是第三正規化的消除傳遞依賴的過程。
相較於需求分析和概念性資料模型,邏輯性資料模型更偏向於機械化的程序。
以映射規則為基準,將概念性資料模型產出物ERD轉換為符合關係型資料庫範式 的過程,是此階段的主要工作。
映射規則
- 方形實體轉換為表格。
- 圓形屬性轉換為欄位。
- 關係轉換為PK或FK。
首先,沒有FK的表格更容易呈現。
關係
- 考慮基數和選用性,表示表格之間的關係。
- 從最簡單的 1:1 關係開始,依序表示 1:N 關係和 N:M 關係。
1:1 關係的處理
在 1:1 關係中,需要查看兩個表格之間的依賴關係並設定FK。
可以視為父表格和子表格。
1:N 關係的處理
在 1:N 關係中,因為 1 被 N 引用,所以要在 N 上設定 FK。
N:M 關係的處理
在關係型資料庫中,為了處理 N:M 關係,需要建立中間表格(也稱為映射表格或連接表格)來表示。
此時,重點在於,需要根據映射表格來表示被引用表格的基數和選用性。
正規化(Normalization)
Wikipedia - Database Normalization
將未精煉的表格轉換為符合關係型資料庫的表格的過程。
產業上使用的正規化過程最多到第三正規化,後面的正規化過程主要用於學術研究。
正規化需要一步一步地依序進行。
第一正規化(1st Normal Form,1NF)
- 表格中包含的欄位應該只有原子值。
第一正規化的基本原則看起來很難理解,但簡單來說,就是每個欄位都應該只有一個值。
如果一個欄位包含多個值,也就是非原子性,那麼使用SQL語法進行連接時會很困難,而且會導致各種問題。
第二正規化(2nd Normal Form,2NF)
- 必須滿足第一正規化。
- 必須消除部分依賴性。
如果表格的行中有重複的值,就找出該行依賴的欄位並將其分離。
第三正規化(3rd Normal Form,3NF)
- 必須滿足第一正規化。
- 必須滿足第二正規化。
- 必須消除傳遞依賴性。
傳遞依賴性這個詞非常難理解。據我了解,如果在特定表格中,隱含地表示其他表格識別符號的值(當然,不包括FK)有一個以上, 那麼這就是傳遞依賴性。