SQL Plusで外部ファイル(sqlファイル)を実行する方法
SQL Plusで外部ファイル(SQLファイル)を実行する方法を解説します。
SQLファイル作成
まず、SQLの実行ファイルを2種類作成します。1つは単純なINSERT、もう1つはINSERTのデータをパラメータ渡しするファイルです。
ファイルの中身はSQLを記述し、拡張子は「sql」とします。
ファイル1:INSERT文
--D:\test\emp.sql --INSERTを実行する INSERT INTO emp (emp_no, emp_name, depno) VALUES ('A009', '山田太郎', 'TO1');
「d\test」に「emp.sql」というファイル名で保存します。
ファイル2:INSERT文(パラメータあり)
--D:\test\emp_para.sql --insertを実行する INSERT INTO emp (emp_no, emp_name, depno) VALUES ('&1', '&2', '&3');
「d\test」に「emp_para.sql」というファイル名で保存します。パラメータにする部分は「&1」「&2」「&3」とします。
SQL Plusで外部ファイルを実行する
SQL Plusで外部ファイルを実行してみます。あらかじめSQL Plusを起動しておきます。
--SQLファイルを実行する @{実行するSQLファイル};
「@」のあとに実行する外部ファイル(SQLファイル)を指定します。
さっそく先ほど作成したSQLファイル「emp.sql」を実行します。
--SQLファイルを実行する @d:\test\emp.sql;
これでSQL Plusで外部ファイル「d\test\emp.sql」を実行できました。
SQL Plusで外部ファイルを実行する(パラメータあり)
SQL Plusでパラメータありの外部ファイルを実行してみます。
--パラメータありのSQLファイルを実行する @d:\test\emp.sql 'A009', '山田太郎', 'TO1';
パラメータを渡す場合は、パラメータの順番にスペース区切りで記述します。
ここでは3つのパラメータ「’A009’」「’山田太郎’」「’TO1’」をSQLファイル「d\test\emp.sql」に渡しました。
SQLファイル「emp.sql」は、この3つのパラメータを使ってINSERTします。
これでSQL Plusで外部ファイルを実行できました。
SQL Plus起動時に外部ファイルを実行する
次に、SQL Plusの起動するときに外部ファイルを実行してみます。
--SQLファイルをSQL Plus起動時に実行する sqlplus {ユーザー}/{パスワード}@{データベース} @{実行するファイル};
SQL Plusを起動すると同時に先ほど作成したSQLファイル「emp.sql」を実行します。
--SQLファイルをSQL Plus起動時に実行する sqlplus usr1/pass1@db1 @d:\test\emp.sql;
「@」のあとに実行する外部ファイル(SQLファイル)を指定します。これでSQL Plus起動時もに外部ファイルを実行することができました。
以上、OracleのSQL Plusで外部ファイル(SQLファイル)を実行する方法でした。
コメント