🗄️
sql formatter,
SQL 格式化工具
格式化並美化 SQL 查詢語句。
🐘
支援多種方言
支援 MySQL、PostgreSQL、T-SQL 等
🎨
語法突顯
即時自動為關鍵字上色
🔒
100% 本地處理
不會將查詢傳送到任何伺服器
關於本工具
這是一個免費的線上開發者工具,可讓您將應用程式記錄的冗長、難以閱讀的單行 SQL 查詢,立即格式化並美化為縮排整齊的查詢程式碼。
當您輸入或貼上 SQL 時,工具會自動將保留字 (例如 SELECT、FROM、WHERE) 轉換為大寫,並套用彩色的「語法突顯」,幫助您直覺地掌握複雜查詢的結構。
使用方法
- 選擇方言:從下拉選單中選擇您使用的資料庫類型 (MySQL、PostgreSQL、T-SQL 等)。
- 縮排設定:選擇您偏好的縮排方式 (2 個空格、4 個空格或 Tab),並決定是否要將關鍵字轉換為大寫。
- 輸入 SQL:將您的原始或壓縮過的 SQL 查詢貼上到左側的「輸入」區域。
- 查看結果:在幾分之一秒內,您完美格式化的查詢就會出現在右側。
- 複製:點擊右上角的「複製」按鈕,將格式化後的查詢儲存至剪貼簿。
名詞解釋
- SQL (Structured Query Language)
- 一種標準化的查詢語言,用於管理與互動關聯式資料庫。SELECT 等指令可檢索資料,INSERT 可新增記錄,UPDATE 可修改現有資料。
- 縮排 (Indentation)
- 在行首使用空白字元,以視覺化方式呈現程式碼的階層結構。在 SQL 格式化中,縮排能讓子查詢與 JOIN 子句一目瞭然。
- 保留字 (關鍵字 / Reserved Words)
- SQL 中具有預定義含義的特殊單字,例如 SELECT、FROM 與 WHERE。在格式化過程中將它們轉換為大寫,能透過視覺上區分指令與資料,顯著提升程式碼的易讀性。
- 子查詢 (Subquery)
- 嵌入在另一個 SELECT 陳述式中的巢狀 SQL 查詢。格式化工具會正確地縮排子查詢,使巢狀結構在視覺上清晰易懂,便於除錯。
- JOIN 子句
- 用於結合兩個或多個相關資料表之資料列的 SQL 語法。類型包含 INNER JOIN、LEFT JOIN 與 RIGHT JOIN。格式化工具會將每個 JOIN 子句放置在獨立的行上,並加上適當的縮排。
- 程式碼格式化工具 (Code Formatter)
- 根據一組規則自動調整原始碼中的空白、換行與縮排的工具,能提升易讀性與可維護性。
- 語法突顯 (Syntax Highlighting)
- 一種以不同顏色顯示關鍵字、函數與字串常數的功能。它能讓您對 SQL 查詢的結構一目瞭然。
使用場景
- ORM 除錯:釐清由 Prisma、ActiveRecord 或 Hibernate 等 ORM 自動產生的龐大單行 SQL 記錄檔。
- 程式碼審查:在提交程式碼之前,統一由不同團隊成員撰寫的糟糕或不一致的縮排。
- 撰寫文件:準備對齊完美且具有語法突顯的程式碼區塊,以便貼上到技術 Wiki 或規格文件中。
- 學習與分析:貼上教學文章中的複雜查詢,將其分解成易於閱讀的區塊,藉此理解其邏輯。
常見問題
- Q.我的 SQL 查詢會被傳送到伺服器嗎?
- 不會。所有 SQL 格式化都完全在您的瀏覽器 JavaScript 引擎中處理。您的查詢絕不會傳輸到任何外部伺服器,因此非常安全,可用於格式化正式環境或敏感的 SQL 程式碼。
- Q.支援哪些 SQL 方言?
- 支援 MySQL、PostgreSQL、SQLite、SQL Server 以及其他主要的關聯式資料庫 (RDBMS) 方言。標準的 SQL 語法在大多數方言選項中都能正確格式化。
- Q.保留字會自動轉換為大寫嗎?
- 會的。像 SELECT、FROM、WHERE 和 JOIN 等 SQL 保留字會自動轉換為大寫。您可以在輸入區上方的設定中切換此行為。
- Q.它可以處理非常長的 SQL 查詢嗎?
- 可以。即使是長達數百行的 SQL 查詢也能快速格式化。包含預存程序在內的複雜語法也能正確處理。
- Q.我可以自訂格式化樣式 (縮排寬度等) 嗎?
- 可以。您可以從編輯器上方的設定面板自訂縮排 (2 個空格、4 個空格或 Tab),以及關鍵字的大小寫 (大寫或保留原樣)。
- Q.如何複製格式化後的結果?
- 點擊輸出面板右上方的「複製」按鈕。格式化後的 SQL 就會立即複製到您的剪貼簿,隨時可貼上到您的編輯器或查詢工具中。
- Q.它會驗證或執行 SQL 嗎?
- 不會。這個工具純粹是一個格式化工具 — 它能美化 SQL 的視覺呈現。不包含語法驗證與查詢執行功能;請使用您的資料庫管理工具來進行這些工作。
Send Feedback
Please let us know your thoughts to help us improve the tool.
Feedback sent successfully. Thank you for your cooperation!
An error occurred. Please try again later.
Feedback is temporarily suspended
The server is busy or spam protection is active. Please try again later.