PowerDesigner 是主流數據建模工具,支持通過數據庫腳本或直連數據庫逆向生成物理模型 (PDM),再轉換為邏輯模型 (LDM)。本文以 PowerDesigner 12.5 為例,圖文詳解 Oracle 逆向全流程、常見配置陷阱及 LDM 生成技巧。
.sql 腳本文件,執行逆向,PDM 自動生成。Code = Name(紫色等號),修改 Name 會同步修改 Code,不利於保留物理名。需在 Model Options → Naming Convention 中取消 Sync Name/Code,保證 Code 固定為物理名,Name 可編輯為業務名。| 問題 | 原因 | 解決 |
|---|---|---|
| 連接報錯「ORA-12154」 | TNS 配置缺失或 Client 版本不匹配 | 檢查 tnsnames.ora、使用 32 位 Client、或改用 JDBC 連接 |
| 逆向缺少註釋 | Oracle 表/列註釋存儲在 USER_TAB_COMMENTS/USER_COL_COMMENTS | 確保有權限查詢該視圖,PDM 12.5+ 自動讀取 |
| PDM 生成後 Code 被 Name 覆蓋 | 默認啟用 Name/Code 同步 | 關閉 Naming Convention 中的 Sync 選項 |
| 大量表逆向緩慢 | 逐個查詢元數據 | 僅勾選核心表、或分批逆向 |
.pdm 文件納入 Git/SVN 版本控制,利用 PDM 內建 Model → Check In/Out 協同建模。Conceptual Data Model (CDM) 作為企業級數據字典基線。