首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL Workbench 可視化建模實戰:從 EER 圖到正向工程生成數據庫完整教程

     編輯:MySQL 資料庫相關知識

MySQL Workbench 是官方提供的可視化數據庫設計工具,支援 EER 建模、正向/逆向工程、SQL 開發、服務器管理。本文以「訂單系統」為例,演示從創建 Schema、設計表結構、建立關係、生成 DDL、執行建庫的完整流程。

一、創建 Schema (Schema = Database)

  1. 點擊「+」創建新 Schema
  2. 命名為 orders,字符集 utf8mb4、排序規則 utf8mb4_general_ci
  3. 雙擊 Schema 標籤可編輯屬性

創建 Schema

Schema 列表

二、創建 EER 圖與表結構

  1. 右鍵 Schema →「Create EER Diagram」
  2. 工具欄選「Table」工具,畫布點擊創建表
  3. 右鍵表 →「Edit Table」進入設計器

EER 圖創建

繪製表

三、設計訂單系統三表

1. 基礎訂單表 orders

  • order_no BIGINT PK AI (自增主鍵)
  • order_date DATETIME DEFAULT CURRENT_TIMESTAMP
  • order_type CHAR(1) DEFAULT 'S' COMMENT 'S=銷售 P=採購'

orders 表設計

2. 銷售訂單表 sales_orders (1:1 擴展)

  • order_no BIGINT PK FK → orders.order_no
  • customer_id BIGINT
  • total_amount DECIMAL(12,2)

3. 採購訂單表 purchase_orders (1:1 擴展)

  • order_no BIGINT PK FK → orders.order_no
  • supplier_id BIGINT
  • expected_date DATE

sales_orders 設計

purchase_orders 設計

四、建立 1:1 識別關係

  1. 工具欄選「1:1 Identifying Relationship」
  2. 先點擊子表 (sales_orders),再點擊父表 (orders)
  3. Workbench 自動在子表創建同名 PK+FK

建立關係

關係確認

關係詳情

五、保存模型文件

File → Save Model As → orders.mwb (XML 格式,支援版本控制)

保存模型

六、正向工程生成 DDL

  1. File → Export → Forward Engineer SQL CREATE Script
  2. 選項:勾選「Generate DROP SCHEMA」、「Generate INSERT Statements for Tables」
  3. 輸出 orders_ddl.sql

導出 DDL

導出選項

生成腳本

七、執行 DDL 建庫驗證

mysql -uroot -p < orders_ddl.sql
# 或 Workbench 內建 SQL 編輯器執行

執行腳本

驗證表結構

表數據預覽

八、進階功能推薦

  • 逆向工程:Database → Reverse Engineer → 連接現有庫 → 生成 EER 圖
  • 模型比對:Database → Compare Schemas → 模型 vs 實例 / 實例 vs 實例
  • 版本控制:.mwb 文件納入 Git,團隊協作審核 Schema 變更
  • 文檔生成:Tools → Generate Documentation → HTML/PDF 數據字典
  • 插件擴展:Lua 腳本自動化命名規範檢查、索引建議
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved