SQL 整形 / 圧縮
SQL 文を整形して読みやすく、または圧縮して小さくします。SQL コードを入力すると、読みやすいインデント付きの整形結果、またはコンパクトな圧縮結果を返します。
ブラウザ内でローカルに実行
SQL 文を整形して読みやすく、または圧縮して小さくします。SQL コードを入力すると、読みやすいインデント付きの整形結果、またはコンパクトな圧縮結果を返します。
ブラウザ内でローカルに実行
エディターに SQL 文を貼り付け、2 つのボタンのどちらかを押します。「SQL を整形」は各句をそれぞれの行に置いて本文をインデントし、「SQL を圧縮」は連続する空白を 1 つの空白にまとめます。どちらもこのタブ内で実行され、貼り付けた SQL が KivTools に送信されることはありません。
出力欄は読み取り専用のため、結果はその場で編集するのではなくコピーまたはダウンロードして使います。「例を読み込む」を押すと注文とユーザーを結合するクエリが入るので、実際の SQL を貼る前に動きを確認できます。
-- と # の行コメント、/* ブロックコメント */、引用符で囲んだ文字列はそのまま残ります。圧縮した出力では行コメントがブロックコメントに書き換わるため、改行が消えても後続の文がコメントに飲み込まれることはありません。
引用符内の文字列はそのまま返ります。SELECT 'a b' は 2 つの空白を保ち、文字列の中のセミコロンや二重ハイフンが文を分割することはありません。
整形は特定のエンジン向けパーサーではなく、キーワード・括弧・引用符の規則に基づいて行われます。そのため構文エラーのある文でも警告なしに整形されて返ります。カウンターが示すのはサイズであり、正しさではありません。
どちらのボタンもデータベースに接続しません。接続・実行・検証のいずれも行いません。
MySQL のバッククォート識別子、SQL Server の [角括弧] 名と TOP、PostgreSQL の :: による型変換と ->>・#> 演算子、Oracle の NVL などは変更されません。変換が変えるのは空白と改行であり、トークンではないためです。ストアドプロシージャの本体はブロックとして解析されず、キーワード単位で整形されます。
処理はブラウザのタブ内で行われるため、実質的な上限はアップロード制限ではなく端末のメモリです。15 KB の文でもすぐに結果が返ります。