バッチファイル

バッチファイルからSQL Serverに接続してみた

バッチファイルとは、Windows環境で実行できるコマンド列を記述したテキストファイルで、バッチファイルを使うと、例えばデータベースに接続して複数のSQL文を実行することができる。

今回は、バッチファイルからSQL Serverに接続し、複数のSQL文を実行してみたので、そのサンプルプログラムを共有する。

前提条件

下記記事のように、A5M2を利用してSQL Serverに接続できていること。

A5M2を利用して各DBに接続してみたA5M2(A5:SQL Mk-2)は、SQL文の入力支援やER図作成などの機能を備えていて、Oracle、MySQL、PostgreSQ...

サンプルプログラムの作成

サンプルプログラムの構成は以下の通りで、今回全て新規で作成している。
サンプルプログラムの構成

setting.iniの内容は以下の通りで、データベースの接続先などを定義している。

select_max_id.sqlの内容は以下の通りで、user_dataテーブルのid最大値を取得するSQLを記載している。

insert_update.sqlの内容は以下の通りで、user_dataテーブルにデータ追加・データ更新するSQLを記載している。

call_sqlcmd.batの内容は以下の通りで、setting.iniの内容を読み込み、前述のSQLを呼び出している。



【PR】「Filmora」は初心者でも本格的な動画編集ができる大変便利なツールだった「Filmora」は初心者でも使いやすい動画編集ツールで、テンプレートとして利用できるテキスト・動画・音楽などが充実していると共に、複数...

サンプルプログラムの実行結果

サンプルプログラムの実行結果は、以下の通り。

1) バッチファイルを実行前のデータは、以下の通り。

サンプルプログラムの実行結果_1

2) コマンドプロンプトを起動し、バッチファイルが存在するディレクトリ(C:\tmp)に移動し、各ファイルの存在を確認する。
サンプルプログラムの実行結果_2

3) バッチファイル(call_sqlcmd.bat)を実行する。実行すると、コマンドプロンプトには以下の値が表示される。
サンプルプログラムの実行結果_3

4) バッチファイルを1回実行後のデータは以下の通りで、SQLに記載通りに、データを1件追加しmemoの値が更新されていることが確認できる。

サンプルプログラムの実行結果_4

5) バッチファイル(call_sqlcmd.bat)を再度実行する。実行すると、コマンドプロンプトには以下の値が表示される。
サンプルプログラムの実行結果_5

6) バッチファイルを2回実行後のデータは、以下の通りで、SQLに記載通りに、データを1件追加しmemoの値が更新されていることが確認できる。

サンプルプログラムの実行結果_6

要点まとめ

  • バッチファイルとは、Windows環境で実行できるコマンド列を記述したテキストファイルで、バッチファイルを使うと、例えばデータベースに接続して複数のSQL文を実行することができる。