首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

使用 UML 進行關聯式資料庫關係建模指南

     編輯:DB2 教學

關係建模核心概念

  • 表** 是基礎元素,由相同結構的**元組** 組成,元組即**行**,包含多個**欄位**。
  • 主鍵** 唯一識別每個元組,可為單欄或組合欄。
  • 外鍵** 參考其他表主鍵,建立**關係**。
  • 關係模型可直接轉換為資料庫結構(表、關係、表空間、索引等)。

UML 表達關係模型

類別圖對應

  • 類別** ↔ 表
  • 屬性** ↔ 欄位 (含資料型別、可空性、預設值)
  • 關聯** ↔ 關係 (1:1、1:N、M:N)
  • 關聯類別** ↔ 連接表 (M:N 關係的中間表)
  • 約束** ↔ PK、FK、UNIQUE、CHECK

範例:汽車資訊表

Class Car {
  LicenseNumber : String {id}  -- PK
  Brand         : String
  Model         : String
  Year          : Integer
  Color         : String
}

5 筆資料,LicenseNumber 為主鍵,行無順序。

ER 建模 vs 關係建模

維度ER 建模關係建模
焦點問題領域分析 (實體、關係、約束)資料庫實現 (表、索引、分區、效能)
產出概念/邏輯模型物理模型、DDL
受眾業務分析師、架構師DBA、開發人員、測試人員

ER 適合「做什麼」,關係建模解決「怎麼做」。兩者互補,不可混淆。

UML 建模最佳實踐

  1. 使用 型別模型 定義域資料型別 (如 EmailAddress、PhoneNumber),提升可讀性與一致性。
  2. 關聯端標註 多重性 (0..1, 1, 0..*, 1..*) 對應 FK 可空與基數。
  3. 利用 OCL (Object Constraint Language) 表達 CHECK 約束與業務規則。
  4. 建模工具 (Rational Rose, ER/Studio, PowerDesigner, PlantUML) 可正向產生 DDL、逆向工程現有資料庫。
  5. 文件化 命名規範 (表名單數、欄位駝峰/底線、PK 命名 PK_Table、FK 命名 FK_Child_Parent)。

從 UML 到 DB2 物理設計

  • 表空間劃分:依存取模式分離熱/冷資料、索引/資料、大物件。
  • 分區策略:Range (日期)、Hash (均勻)、MDC (多維)。
  • 索引設計:PK 自動、FK 顯式、查詢欄位組合索引、INCLUDE 覆蓋查詢。
  • 壓縮:行壓縮 (ROWCOMPRESS)、值壓縮 (VALUE COMPRESSION)、XML 壓縮。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved