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

PowerDesigner 逆向工程導入 MySQL 資料庫結構:完整步驟與 32/64 位 ODBC 坑位避雷

     編輯:MySQL 綜合教學

PowerDesigner 逆向工程導入 MySQL 資料庫結構:完整步驟與 32/64 位 ODBC 坑位避雷

PowerDesigner 是主流資料建模工具,透過 ODBC 逆向導入 MySQL 結構是常見需求。本文記錄標準化操作流程與「32 位 PD 連不上 64 位 ODBC」經典坑位解法。

前置準備

  • PowerDesigner 安裝完成(多為 32 位版本)
  • MySQL 伺服器網路可達,開放 3306 埠
  • 下載 MySQL Connector/ODBC 5.1+(32 位 MSI 版):
    https://dev.mysql.com/downloads/connector/odbc/

標準操作流程(6 步)

  1. 安裝 32 位 ODBC 驅動
    • 執行 mysql-connector-odbc-5.1.x-win32.msi 安裝
    • ⚠️ 必須安裝 32 位版本,因 PowerDesigner 為 32 位進程,無法載入 64 位驅動
  2. 建立系統 DSN(系統資料來源)
    • 控制台 → 系統管理工具 → ODBC 資料來源 (32 位) → 系統 DSN → 新增
    • 選擇 MySQL ODBC 5.1 Driver
    • 填寫:
      • Data Source Name: MySQL_PD_Import
      • TCP/IP Server: 192.168.x.x
      • Port: 3306
      • User: root / 讀取權限帳號
      • Password: ********
      • Database: 可不選,連線後可切換
    • 測試連線 → 確定保存
  3. PowerDesigner 逆向工程嚮導
    • 選單:File → Reverse Engineer → Database
    • DBMS 選擇:MySQL 5.0(或 5.5/5.6/5.7/8.0 依版本選擇)
    • 確定進入選項視窗
  4. 配置連線來源
    • Selection 分頁 → Using a data source
    • 點擊右側資料庫圖示 → 選擇 ODBC file data source
    • 選擇步驟 2 建立的 DSN(或直接選 System DSN)
    • 輸入 User ID / Password → Connect
  5. 選擇導入物件
    • 彈出資料庫/表單選擇視窗
    • 勾選目標 Schema 與所需 Tables/Views
    • 可按 Select All 全選
  6. 執行導入
    • 確定 → 進度條跑完 → 物件模型顯示於 PD 工作區
    • 可進一步產生 PDM、CDM、SQL 腳本等

經典坑位:IM002 驅動程式管理器找不到資料源名稱

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
SQLSTATE=IM002

根因

PowerDesigner (32 位) 嘗試載入 64 位 ODBC 驅動。Windows 將 32 位與 64 位 ODBC 管理器完全隔離:

  • C:\Windows\System32\odbcad32.exe → 64 位管理器
  • C:\Windows\SysWOW64\odbcad32.exe → 32 位管理器

解決方案

  1. 確認 PowerDesigner 位數:Help → About 看是否 32-bit
  2. 下載並安裝 32 位 MySQL Connector/ODBC(檔名含 win32 或 x86)
  3. 用 32 位 ODBC 管理器 建立 DSN:
    Win+R → C:\Windows\SysWOW64\odbcad32.exe
  4. 或在 PD 內直接用「Using a data source」→ ODBC file data source 選擇 .dsn 檔案

進階技巧

  • 導入大量表效能優化:取消勾選「Import Procedures/Triggers」等非必需物件
  • 增量同步:修改資料庫後,重新逆向導入會嘗試合併變更,建議備份原 PDM 再操作
  • 命名規範轉換:PD 內可配置 Naming Conventions,自動將資料庫蛇形命名轉為 Java 駝峰命名
  • 版本對應:MySQL 8.0 選擇 DBMS MySQL 8.0,支援 CTE、Window Function、JSON 等新特性逆向

替代方案

  • MySQL Workbench:原生支援,免費、跨平台、逆向/正向工程完整
  • DataGrip / Navicat / DBeaver:支援匯出 PDM 兼容格式(XML/XMI)
  • mysqldump --no-data -d + 解析 SQL 生成模型(自動化腳本)
核心鐵律:32 位應用必須配 32 位 ODBC 驅動,用 32 位 ODBC 管理器建 DSN。這不僅適用於 PowerDesigner,所有 32 位 Windows 應用(舊版 Excel、Access、VB6、Delphi 等)連接資料庫同理。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved