SQLのINSERT文をページ上で一瞬で簡単に自動生成できるWEBツール

こんにちは~。「デザインもできるシステムエンジニア」のあつもり(@atumori17)です。

このブログではAIスピーカーの使い方やエクセルVBAの情報などを発信しています。

今回はSQLのINSERT文を自動生成するWEBツール「いん猿」の紹介です。当ブログ上で、一瞬で簡単にINSESRT文が作れちゃいます。

レクタングル大336×280

INSERT文を自動で生成するツール「いん猿」

「変換前データ」にデータを入力後「INSERT文を生成」ボタンをクリックしてください。
自動的にSQL文が生成され「変換後データ」にINSERT文が表示されます。

 いん猿 Ver 1.0.0

 変換前データ
変換後データ

データは以下のルールで入力してください。

1行目「テーブル名」
2行目「列名」
3行目以降「インサートするデータ」

※「列名」「インサートするデータ」はカンマ区切りで複数指定できます。

エクセルデータから「いん猿」でINSERT文を作る方法

このようなツールを利用する場合、いきなりゼロからデータを手入力していくことは少ないと思います。まずベースとなるテキストファイルやエクセルファイルがあり、それをもとに入力していくことが多いはずです。

そこでSQL文を作るのに慣れていないかたに向けて、エクセルデータを「いん猿」に貼り付ける方法を説明します。

テーブルにインサートしたいデータが入ったエクセルファイルを開きます。今回は顧客情報が入ったエクセルファイルを例にしています。

1行目にテーブル名、2行目に列名、3行目以降がデータになっています。

  • テーブル名:CUSTOMER
  • 列名:customer、address、company

ファイルメニューから「名前を付けて保存」をクリックし、「ファイルの種類」からCSV(カンマ区切り)を選択します。「保存」ボタンをクリックします。

「選択したファイルの種類は複数のシートを含むブックをサポートしていません。」というメッセージが表示されたら「OK」をクリックします。これは現在開いてるシートしかCSVファイルとして保存されませんよ、という意味です。

「顧客.csvには、CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります。この形式でブックを保存しますか?」というメッセージが表示されたら「OK」をクリックします。

これは罫線やセルの色などの情報が保存されないという意味のメッセージです。CSVファイルはテキストファイルなので、セルの色情報などを持っていないため、罫線などの情報が失われます。

ただし元のxlsファイルから罫線などの情報がなくなるわけではありませんので、心配しないでください。

保存したCSVファイルをメモ帳などのテキストエディタで開きます。1行目のテーブル名の後ろ入っているカンマを削除します。

データをすべて選択して右クリックし「コピー」をクリックします。

当ブログのページに戻り「変換前データ」にさきほどコピーしたデータを貼り付けます。続いて「INSERT文を生成」ボタンをクリックします。

INSERT文が生成されました!変換後データをクリックすると自動的に全選択状態になりますので、データをコピーしておきます。

以上がエクセルデータから「いん猿」でINSERT文を作る手順です。

今回のバージョンでは、数値だろうが文字列だろうが全てシングルクォーテーションで囲まれてしまいます。次回のバージョンでは数値の判別処理を入れて、数値の場合はシングルクォーテーションをつけないようにしたいです。

SQLServerManagementStudioでINSERT文を実行してみる

さきほどコピーしておいたINSERT文を、SQLServerManagementStudio(SSMS)を使って実行してみましょう。ここではSQLServerを例にしていますが、OracleやMySQLでもOKです。

「新しいクエリ」をクリックし、クエリウィンドウに自動生成されたSQL文を貼り付けます。「実行」ボタンをクリックします。

メッセージウィンドウにINSERT文の数だけ処理結果が表示されます。画面の下に「クエリが正常に実行されました。」というメッセージが表示されていれば成功です。

select * from テーブル名

を入力して全件表示させます。「結果」をみるときちんとデータがインサートされているのがわかると思います。

おつかれさまでした。正常にデータがインサートされましたね。

まとめ

いかがでしたか?今回はSQLのINSERT文を自動生成する超時短WEBツールの紹介でした。

扱うデータが少ないのであれば、エクセルを使って手入力でSQL文を作ってコピペすればよいと思います。

ですが大量のデータをINSERTする必要がある場合、大変便利なので使ってみてください。

レクタングル大336×280
レクタングル大336×280

シェアする

  • このエントリーをはてなブックマークに追加

フォローする