UFOZoo

SQL格式化 — MySQL/PostgreSQL美化工具

SQL 格式化工具,支持 MySQL/PostgreSQL/SQL Server/Oracle 等 13+ 种方言。关键字大小写转换,粘贴即格式化。

功能特性

  • 输入即自动格式化,粘贴即出结果,智能添加缩进和换行
  • 支持 13+ 种 SQL 方言:MySQL、PostgreSQL、SQL Server、Oracle、SQLite、BigQuery、Snowflake、Spark SQL 等
  • 关键字大小写转换:一键将 SELECT/FROM/WHERE 等关键字转为大写、小写或保持原样,匹配团队代码规范
  • 语法高亮:关键字蓝色、字符串绿色、数字琥珀色、运算符红色、标识符紫色、注释灰色,一目了然
  • 自定义缩进:2 空格、4 空格或 TAB,适配不同项目的编码风格
  • 一键压缩 SQL 查询,移除多余空白,用于生产环境或减小传输体积
  • 实时 SQL 校验,检测语法错误并显示错误行号位置
  • 统计面板显示压缩率、关键字数量、表引用数等优化分析数据
  • 拖拽上传或点击选择 .sql 文件,支持任意 SQL 文件格式
  • 一键复制到剪贴板或下载为 .sql 文件,方便分享和使用
  • 纯浏览器本地处理,断网也能用,数据绝不上传,适合处理敏感的数据库查询语句
  • 智能方言检测,根据选择的数据库类型自动调整格式化规则(如 PostgreSQL 用双引号,MySQL 用反引号)

使用方法

  1. 1将 SQL 查询粘贴到左侧编辑区,自动完成格式化。也可以直接拖拽 .sql 文件到页面上。
  2. 2从下拉菜单选择你的 SQL 方言(标准 SQL、MySQL、PostgreSQL、Oracle 等),启用特定数据库的格式化规则。
  3. 3选择关键字大小写样式:UPPER 将所有关键字转为大写;lower 转为小写;Preserve 保持原始大小写。
  4. 4点击缩进按钮(2 / 4 / ⇥)切换缩进风格。大多数团队使用 2 空格缩进。
  5. 5在「格式化」(带语法高亮的美化输出)、「压缩」(单行紧凑输出)、「统计」(查询分析)三个标签间切换。
  6. 6校验失败时,下方会显示错误详情和行号——在左侧面板修复语法问题。
  7. 7点击右侧工具栏的复制或下载按钮保存格式化后的 SQL。
  8. 8查看统计标签页了解查询压缩率、关键字数量和表引用数等优化分析数据。
  9. 9使用上传按钮从设备加载 .sql 文件,或直接拖拽到输入面板。

常见问题

什么是 SQL 格式化?

SQL 格式化(也叫美化或 pretty-print)会给混乱的 SQL 查询添加正确的缩进、换行和一致的间距,使其变得可读易调试。大多数 ORM 和查询生成器产生的都是压缩后的 SQL —— 这个工具的作用就是还原成人类可读的格式,方便理解、优化和维护代码。

支持哪些数据库?

我们支持 13+ 种主流 SQL 方言,包括标准 SQL、MySQL、MariaDB、PostgreSQL、Microsoft SQL Server (T-SQL)、Oracle PL/SQL、SQLite、Google BigQuery、IBM DB2、Apache Hive、Amazon Redshift、Snowflake 和 Apache Spark SQL。每种方言都有特定的格式化规则 —— 例如 PostgreSQL 使用双引号标识符,而 MySQL 使用反引号。从下拉菜单选择你的数据库即可获得准确的格式化效果。

我的 SQL 数据会上传到服务器吗?

不会。所有处理完全在浏览器中通过 JavaScript 完成,SQL 查询不会离开你的设备,不会经过网络传输,也不会被存储在任何地方。这对数据库安全至关重要 —— 你可以安全地格式化包含敏感表名、列名或 WHERE 子句的生产环境查询,不会有任何泄露风险。页面加载后甚至可以断网使用。

关键字大小写转换有什么作用?

关键字大小写转换可以改变 SQL 关键字在输出中的显示方式。UPPER(最常用)将 SELECT、FROM、WHERE、JOIN 等转为大写以获得最佳可读性。lower 全部转为小写如果你的团队偏好这种风格。Preserve 则完全保持你输入时的原始大小写。这有助于在团队的 SQL 代码库中强制执行统一的编码规范。

格式化和压缩有什么区别?

格式化(美化)给 SQL 添加适当的缩进、子句后换行(SELECT、FROM、WHERE、JOIN)、运算符周围一致间距 —— 适合开发、调试、文档编写或代码审查时使用。压缩则移除所有不必要的空白字符产生紧凑的单行查询 —— 适合将 SQL 嵌入应用日志、减小存储空间或在 API 载荷中节省每个字节的场景。

这个工具会校验 SQL 语法吗?

是的。格式化器包含基本的语法校验功能,能检测常见错误如括号不匹配、缺少分号、无效关键字、未闭合的字符串字面量等。当检测到错误时会显示错误消息和大约的行位置。注意:这只校验格式化语法 —— 不会检查表/列是否存在,也不会在真实数据库上执行查询。

如何复制格式化后的 SQL?

点击右侧工具栏的复制按钮,将完整的格式化结果复制到剪贴板。也可以点击下载按钮保存为 .sql 文件。两种操作都是即时的 —— 无需等待、无需弹窗、无需注册。

能格式化存储过程或多条语句吗?

能。格式化器能处理多语句 SQL 文件,包括 CREATE TABLE、INSERT INTO、UPDATE、DELETE、存储过程(CREATE PROCEDURE)、函数(CREATE FUNCTION)、触发器和包含 BEGIN/END 块的复杂脚本。只需粘贴整个 .sql 文件,它会按照所选方言的规范正确格式化每条语句。

有文件大小限制吗?

实际限制取决于你设备的可用内存。大多数 1-5 MB 以内的 SQL 文件在现代浏览器中都能流畅运行(相当于数千行查询)。超大的导出文件(50 MB 以上)可能会因为浏览器的渲染限制而变慢。这种情况建议使用命令行工具如 sqlformat(Python)或数据库客户端自带的格式化功能。

手机上能用吗?

能。布局会自动适配小屏幕 —— 输入区和输出区在手机和平板上会上下堆叠排列。包括方言选择、关键字大小写切换、缩进控制、语法高亮、复制、下载和拖拽上传在内的所有功能都支持触屏操作。非常适合在移动中快速检查和格式化 SQL 查询。

相关工具