SQL INSERT 文ジェネレーター
CSV・TSV・JSON・Markdown の表から INSERT 文を生成。DB ごとの識別子引用符とバッチ行数に対応。
すべてブラウザ内で動作します。入力した内容が送信されることはありません。
このツールについて
表を貼り付けるかファイルをドロップし、対象テーブル名と識別子の引用符を指定します。入力形式は自動判別されます。値は SQL の文字列リテラルとして引用符で囲まれますが、型判別が数値・真偽値・null を認識した場合はそのまま出力されます。値の中のシングルクォートは二重化してエスケープされ、これはどの DB エンジンでも通る移植性の高い書き方です。1 文あたりの行数で、1 行ごとの INSERT か複数行をまとめた INSERT かを切り替えられます。
よくある質問
- CSV から SQL の INSERT 文を作るには?
- CSV を貼り付けてテーブル名を設定し、結果をコピーするだけです。列名は 1 行目から取得され、生成される文に明示的に並ぶため、実テーブル側の列順に依存しません。
- SQL インジェクション対策になりますか?
- シングルクォートを二重化してエスケープするため、生成スクリプト内のリテラルとしては正しい形です。ただしアプリケーションコードでのプレースホルダの代わりにはなりません。アプリではバインド変数を使い、本ツールは初期データ投入や単発のロードに使ってください。
- 「1 文あたりの行数」は何を変えますか?
- 1 つの INSERT 文に入れる値タプルの数です。1 行ずつなら差分が見やすく部分的な再実行も容易ですが、まとめて入れる方が投入は大幅に速くなります。ただしバッチは 1 行でも不正だと全体が失敗します。
- 先頭の 0 が消えてしまいました。
- 型判別がその値を数値と認識したためです。「数値・真偽値・null を判別」をオフにすると、すべての値が引用符付きの文字列として出力され、007 のような識別子もそのまま残ります。