前言:只需結構,不要資料
開發、測試、上線流程中,常需將線上表結構導出為 SQL 腳本供版本控管或離線審核。Navicat 提供直觀的「資料傳輸」功能,勾選幾個選項即可乾淨導出純結構 DDL。本文記錄標準操作步驟,避免每次重新摸索。
操作步驟
- 開啟資料傳輸:在左側連線列表右鍵點選資料庫 → 選擇「資料傳輸」。

- 設定來源與目標:
- 左側「資料庫物件」勾選需導出的表(可全選)。
- 右側「目標」選「檔案」,指定輸出
.sql 路徑與檔名。
- 上方頁籤切換至「進階」。

- 關鍵:取消「插入記錄」:在「進階」→「記錄選項」中,取消勾選「插入記錄」。這是導出純結構的核心開關。

- 表選項按需調整:仍在「進階」→「表選項」區,常用勾選:
- ✅ 包含主鍵、索引、外鍵、觸發器
- ✅ 加上
DROP TABLE IF EXISTS(便於重複執行)
- ❌ 若目標庫版本較低,可取消「包含資料表註解」等新特性
- 點擊「開始」,幾秒內獲得純 DDL 腳本,可直接納入 Git 版控或交付 DBA 審核。
常見問題與技巧
- 導出視圖/程序/函數:同樣在「資料庫物件」頁籤勾選對應物件類型,流程一致。
- 大量表分批導出:每次勾選 50~100 張表,避免單一檔案過大導致編輯器卡頓。
- 命令列替代方案:
mysqldump -d -u root -p db_name > schema.sql(-d 即 --no-data),適合 CI/CD 自動化。
- 版本差異:Navicat 15/16 介面略有不同,但「資料傳輸 → 進階 → 取消插入記錄」邏輯不變。
掌握這三步,未來導出結構腳本不再需要查閱文件,專注於 Schema 設計本身。