# Db2フォーマッター

Db2のルールに従って、LUWおよびz/OS向けのIBM Db2SQLを整形します。X''、G''、N''リテラル、二重引用符で囲まれた識別子、#、@、$を含む名前に対応しています。FETCH FIRST n ROWS ONLYは独立した行に配置され、WITH URなどの分離レベル句はクエリと同じ行に残り、MERGEの分岐は新しい行から始まります。データベース開発者やDBA向けに、閉じていない文字列や括弧を行番号と列番号とともに報告します。

## よくある質問

### どのDb2構文に対応していますか？

シングルクォートを重ねてエスケープした文字列、16進数の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リクエストあたり最大1 MB、ステートメントあたり128 KBです。長いスクリプトは1ステートメントずつ整形されます。

### インデントを選べますか？また、SQLは保存されますか？

スペース2個または4個、あるいはタブを使用できます。SQLはメモリ上でのみフォーマットされ、保存されません。

ここに広告を掲載しませんか？

[メールでお問い合わせ](mailto:hi@dennn.is?subject=OneClick%20Pro%E3%81%A7%E3%81%AE%E5%BA%83%E5%91%8A%E6%8E%B2%E8%BC%89)

[広告 WordPress向けのエージェント対応プラグインスイート。](https://sleekwp.com/?ref=oneclickpro)
