跳至內容
資料庫設計

DDL 產生器

以視覺化方式設計資料表,同時產生 CREATE TABLE 語句(MySQL / PostgreSQL / SQLite)與 ER 圖。也可以貼上 JSON 範例自動推論欄位。所有處理皆在瀏覽器內完成,您輸入的內容不會被傳送。

指南: 使用方式與特色

  • 在「由 JSON 自動產生」貼上物件或陣列 JSON,即可新增已自動推論欄位型別、主鍵、NOT NULL 的資料表。
  • 在「資料表設計」中可直接編輯資料表名稱、欄位名稱、型別、PK/NOT NULL/UNIQUE/自動遞增與預設值。
  • 在「關聯」中選擇來源資料表/欄位與目標資料表/欄位,即可新增外鍵約束並在 ER 圖中顯示連接線。
  • 選擇資料庫方言(MySQL / PostgreSQL / SQLite)並點擊「產生 DDL」,即可取得該方言格式的 CREATE TABLE 語句。

FAQ: 常見問題

  • MySQL、PostgreSQL、SQLite 之間的型別如何轉換?

    資料表在內部以共通的邏輯型別(INTEGER、DECIMAL、VARCHAR 等)管理,只有在產生 DDL 時才會轉換為各資料庫實際的型別。例如 BOOLEAN 在 SQLite 中會轉換為 INTEGER(因為 SQLite 沒有布林型別),自動遞增主鍵在 MySQL 會輸出 AUTO_INCREMENT、PostgreSQL 為 SERIAL、SQLite 則為 INTEGER PRIMARY KEY AUTOINCREMENT。
  • 勾選 PK 後,NOT NULL、UNIQUE、預設值的設定會怎樣?

    主鍵依定義即為 NOT NULL 且 UNIQUE,因此勾選 PK 的欄位會忽略 NOT NULL、UNIQUE、預設值設定,僅輸出「型別 PRIMARY KEY」(若開啟自動遞增則加上 AUTO_INCREMENT 等)。
  • 由 JSON 產生時,巢狀資料會如何處理?

    若頂層屬性的值為物件陣列,會自動拆分成擁有外鍵指向父資料表的獨立資料表(例如訂單與明細)。單純的巢狀物件則會轉為 JSON 型別欄位。超過一層的巢狀不會自動拆分,需要手動調整。

使用情境: 常見使用情境

  • 為新 API 或服務規劃初始資料表

    在專案初期以視覺化方式組合所需的資料表與欄位,並直接匯出為 CREATE TABLE 語句。

  • 從既有 JSON 回應反推資料庫結構

    貼上 API 回應或日誌的 JSON 範例,自動產生對應的資料表結構與 DDL 草稿。

  • 製作團隊 ER 圖審查資料

    設計好的資料表結構可立即以 Mermaid 格式的 ER 圖呈現與分享,方便審查時對齊設計共識。

  • 結合 sql-to-er/SQL Builder 的完整設計流程

    將產生的 DDL 交給 SQL Builder 開始組建查詢,或之後貼回 sql-to-er 再次確認結構,從設計到查詢都能在瀏覽器內完成。

注意: 注意事項與限制

  • 產生的 DDL 僅包含基本約束

    支援 PRIMARY KEY、NOT NULL、UNIQUE、DEFAULT、FOREIGN KEY,但不會產生索引、CHECK 約束、字元集/定序、分區等設定。在用於正式環境遷移前,請務必檢查產生的內容。

  • JSON 型別推論取決於您提供的範例

    型別只能根據您提供範例中出現的值來推論。若欄位實際上可能出現其他型別的值,請在產生後手動調整型別。

由 JSON 自動產生(選用)

資料表設計

關聯(外鍵)

DDL 輸出

ER 圖預覽

這個工具的相關文章

Recent Articles

工具介紹
2026-08-03

從資料表設計自動產生 CREATE TABLE 語句的原理|DDL 產生器

解析 DDL 產生器的實作:以視覺化方式設計資料表並產生 CREATE TABLE 語句與 ER 圖。內容涵蓋 MySQL/PostgreSQL/SQLite 的型別轉換規則,以及從 JSON 範例推論欄位的演算法。

使用案例
2026-07-21

GitHub Actions needs 設計模式集|加速 CI 的依賴關係組織法與反模式

以模式與反模式對照表整理 GitHub Actions 中 needs 所建立的 job 依賴關係。涵蓋 concurrency 取消重複執行、fail-fast 取捨、matrix 與 needs 組合的陷阱,以及可重複使用工作流程,並附上可直接複製的 YAML 範例。

使用案例
2026-07-21

Mermaid ER 圖語法完全參考|關聯符號與實戰範例

完整整理 Mermaid erDiagram 語法:烏鴉腳表示法的基數對照表、一對多與多對多的差異、含 PK/FK 的屬性定義,以及一個完整的電商範例。

工具介紹
2026-07-21

如何用 SQL 建構器以視覺化方式組出 SELECT、JOIN 查詢

說明如何在瀏覽器中用視覺化 SQL 建構器組合 SELECT、WHERE、JOIN。涵蓋數值自動加引號的判斷原理、JOIN 使用時機對照表,以及多資料表 JOIN 的寫法。

使用案例
2026-07-21

SQL JOIN 完全參考|INNER、LEFT、RIGHT、FULL 的差異與結果列數觀念

以對照表與結果列數範例,完整整理 SQL 的 JOIN 種類(INNER/LEFT/RIGHT/FULL/CROSS/SELF)。說明一對多 JOIN 為何會使列數增加、WHERE 子句與 ON 子句在 NULL 判斷上的陷阱,以及多資料表 JOIN 的寫法。

工具介紹
2026-07-16

Case Converter ― camelCase、snake_case、kebab-case 等 9 種命名規則一次轉換

說明如何將識別字或變數名稱同時轉換成 camelCase、PascalCase、snake_case、CONSTANT_CASE、kebab-case 等 9 種命名規則。涵蓋連續大寫字母(HTTPServer)與數字的處理方式,以及多行批次轉換。

廣告

廣告