# MariaDB 格式化工具

格式化 MariaDB 查询和脚本，并按 MariaDB 规则处理反引号标识符、反斜杠转义、# 注释、可执行注释和 DELIMITER 代码块。ON DUPLICATE KEY UPDATE 和 RETURNING 等子句会保持完整，列和条件会缩进，语句之间以空行分隔。未闭合的字符串和括号会报告行号和列号，方便快速检查。

## 常见问题

### 这与 MySQL 格式化工具有何不同？

两者采用相同的 MySQL 引号和注释规则。MariaDB 格式化工具还会将 RETURNING 视为独立子句；MariaDB 支持在 INSERT、REPLACE 和 DELETE 语句中使用 RETURNING。

### 可以识别哪些字面量和标识符？

可识别反引号标识符、带反斜杠转义的单引号和双引号字符串、X'' 和 B'' 字面量、N'' 国家字符串、_utf8mb4'text' 等字符集引导符，以及 @变量。它们的内容绝不会被修改。

### 注释如何处理？

井号注释 (#)、双连字符注释（后跟空格）和块注释都会保留。带有版本标记的可执行注释会完全按原样保留。

### 哪些子句会单独换行？

SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY 和 LIMIT 会各自另起一行。ON DUPLICATE KEY UPDATE、LOCK IN SHARE MODE、FOR UPDATE 和 RETURNING 也会作为完整子句保留在一起。

### 可以格式化存储过程吗？

可以。DELIMITER 行会各自独占一行，自定义分隔符用于结束每个例程，带有 IF、WHILE 和 LOOP 的 BEGIN 和 END 代码块会缩进。

### 它会更改关键字的大小写吗？

不会。所有关键字和名称都会保留你输入时的大小写。只有空白字符和换行会改变。

### 会检测哪些错误？

未闭合的字符串、带引号的标识符和块注释，以及括号不匹配，都会报告行号和列号。此工具不提供完整的语法和架构检查。

### 可以选择缩进方式吗？

可以。为每层嵌套选择使用 2 个或 4 个空格，也可以使用制表符。带括号的短列表会保持在同一行。

### 输入内容可以有多大？

每次请求最多 1 MB，每条语句最多 128 KB。这个限制足以处理包含大量过程和视图的大型转储文件。

### 我的 SQL 会被保存吗？

不会。查询会在内存中格式化后立即返回，绝不会保存，只会记录请求大小。

在这里投放广告？

[给我们发邮件](mailto:hi@dennn.is?subject=%E5%9C%A8%20OneClick%20Pro%20%E4%B8%8A%E6%8A%95%E6%94%BE%E5%B9%BF%E5%91%8A)

[广告 适用于 WordPress 的智能体就绪型插件套件。](https://sleekwp.com/?ref=oneclickpro)
