ここでは、Windowsバッチからsqlplusを呼び出し、SQLを実行する方法を紹介します。
Windowsバッチは、テキストファイルの拡張子をbatに変更することで作成できます。
sqlplusを呼び出したい場合は、Windowsバッチの中で「sqlplus ユーザ名/パスワード@接続文字列」と書きます。
sqlplusの後ろに-sとオプションを付けることで、サイレントモードで実行できます。サイレントモードでは、コマンドプロンプトやメッセージなどが表示されなくなります。バッチ処理を実行するときはこのモードで良いと思います。
-sの後ろには、「@SQLファイル名」を指定することで、sqlplusでDBへログインし、指定したSQLファイルの中のSQLを実行します。
Windowsバッチのサンプル
Windowsバッチのサンプルを書いてみました。
「test.bat」というWindowsバッチファイルで、バッチを実行すると、「delete.sql」というSQLファイルを実行します。「delete.sql」には、Table1を全件一括でDELETEするSQLを書いています。
◆test.bat
「sqlplus -s username/password@db1 @delete.sql」でsqlplusの起動と共に、「delete.sql」ファイルを実行しています。
@echo off
sqlplus -s username/password@db1 @delete.sql
◆delete.sql
「delete from table1;」でレコードを削除しています。
delete from table1;
まとめ
WindowsバッチでsqlplusからSQLを実行するときは、sqlplusコマンドの実行と共に、@SQLファイル名を指定することで、SQLを実行できます。
主なSQLの書き方や使い方については、↓で詳しく解説していますのでぜひ参考にしてください。
・データの検索:【SQL】SELECT文の書き方:サンプル多数あり
・データの追加:【SQL】INSERT文の書き方:サンプル多数あり
・データの更新:【SQL】UPDATE文の書き方:サンプル多数あり
・データの削除:【SQL】DELETE文の書き方:サンプル多数あり