# Db2 格式化工具

使用 Db2 规则格式化适用于 Db2 for LUW 和 Db2 for z/OS 的 IBM Db2 SQL，支持 X''、G'' 和 N'' 字面量、双引号标识符，以及包含 #、@ 和 $ 的名称。FETCH FIRST n ROWS ONLY 单独占一行，WITH UR 等隔离子句保留在查询所在行，MERGE 分支另起新行。数据库开发人员和 DBA 可以查看未闭合字符串和括号所在的行和列。

## 常见问题

### 支持哪些 Db2 语法？

可以识别单引号字符串（其中的引号以成对引号表示）、十六进制 X''、图形 G'' 和国家 N'' 字面量，以及 GX''、UX'' 和 BX'' 字符串。双引号标识符以及包含 #、@ 或 $ 的普通名称都会保持原样。

### 如何处理 FETCH FIRST？

FETCH 与 LIMIT 一样从新行开始。子句的其余部分（例如 FIRST 10 ROWS ONLY）会在下一行保持连在一起。

### WITH UR 和其他隔离子句如何处理？

WITH UR、WITH CS、WITH RS 和 WITH RR 会与前面的子句保留在同一行。它们绝不会被误认为是 WITH 公用表表达式。

### 支持 MERGE 吗？

可以。WHEN MATCHED THEN 和 WHEN NOT MATCHED THEN 分支会另起新行。

### 它能格式化 SQL PL 存储过程吗？

可以。带有 IF、CASE 和 LOOP 结构的 BEGIN 和 END 块会缩进，内部语句则各占一行。

### 注释会保留吗？

可以。-- 行注释和 /* 块注释 */ 会保留原位。多行块注释会按照新的布局重新缩进。

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

不会。关键字和名称会保留你输入时的大小写。数据库会将未加引号的 Db2 名称统一转换为大写，因此混合大小写仍然有效。

### 会检测哪些错误？

未闭合的字符串、带引号的标识符和块注释，以及不平衡的括号；每项都会标出行和列。不会向数据库发送任何内容。

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

每次请求最多 1 MB，每条语句最多 128 KB。较长的脚本会逐条语句格式化。

### 可以选择缩进方式吗？我的 SQL 会保存吗？

可使用 2 个或 4 个空格，也可使用制表符。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)
