已完成前兩篇:ODBC 數據源配置、物理模型建立、連接數據庫、執行逆向工程、合併模型。當前 PDM 中已包含從 MySQL 逆向出來的表、鍵、索引、視圖等對象。
菜單欄:Database → Generate Database...
MySQL 5.0 或更高版本。Tables、Indexes、Keys、References、Views、Procedures 等需同步的對象類型。Generate CREATE statements:建表語句。Generate DROP statements:重建前先刪除(謹慎,生產環境建議關閉)。Qualify names with schema:加庫前綴 `db`.`table`。Use IF NOT EXISTS:冪等建表,避免報錯。點擊對話框右側 Preview 標籤,即可查看即將執行的完整 SQL 腳本:
.sql 文件,供 DBA 審核或手工執行。utf8mb4。AUTO_INCREMENT 起始值是否合理。COMMENT)是否保留。.sql 文件,納入版本控制,走變更流程部署。| 問題 | 解決 |
|---|---|
| 預覽 SQL 中字符集為 latin1 | PDM 模型屬性 Database → DBMS → Default Char Set 改為 utf8mb4,重新生成。 |
| 外鍵名過長報錯 | MySQL 64 字符限制,PDM Naming Convention 縮短前綴,或手工修改腳本。 |
| 視圖依賴順序錯誤 | Preview 中手動調整順序,或分批執行:先建表/索引,再建視圖/過程。 |
| 大量表導出慢 | 取消勾選 Generate DROP,僅導出 CREATE;或用 mysqldump -d 導出純結構對比。 |
schema_v1.2.sql。