スポンサードリンク
Oracleジョブ作成前準備(プログラム作成)
本項では、Oracleジョブで使用するプログラム作成について解説します。
プログラムはジョブとは別のエンティティです。ジョブは特定の時刻または特定のイベントの発生により実行されて、その中で特定のプログラムを呼び出して初めてプログラムがを起動します。既存のプログラム・オブジェクトを指し示すジョブを作成できるため、様々なジョブが同じプログラムを使用して、別の時刻に別の設定でプログラムを実行できます。Oracleはデフォルトでも多数のプログラムが準備されておりますが、システム特有の処理を実行したい場合などにプログラムを作成して、ジョブから呼び出します。
一般的に言うプログラムと、ここで言うOracleプログラムとは多少定義が違います。Oracleプログラムオブジェクト(※以下、プログラム)では、Oracleスケジューラによって実行される内容が記述されます。
プログラムの要素は次のとおりです。
要素 |
説明 |
処理 |
ストアド・プロシージャ名、オペレーティング・システムのファイル・システムにある実行可能ファイル(外部実行可能ファイル)の名前、PL/SQL無名ブロックのテキストなど |
タイプ |
STORED_PROCEDURE、PLSQL_BLOCKまたはEXTERNALがあり、EXTERNALは外部実行可能ファイルなど |
引数の数 |
ストアド・プロシージャまたは外部実行可能ファイルが受け入れる引数の数 |
プログラムで参照されるストアド・プロシージャまたは外部実行可能ファイルが引数を受け入れる場合は、これらの引数をプログラムの作成後に個別ステップで定義します。各引数のデフォルト値を定義することもできます。
|
以下にOracleプログラムの作成手順を紹介します。
(1)プログラム確認
現在のプログラム一覧を確認します。
SQL> set pages 1000
SQL> SELECT PROGRAM_NAME FROM DBA_SCHEDULER_PROGRAMS ;
PROGRAM_NAME
------------------------------------------------------------
JDM_XFORM_SEQ_PROGRAM
JDM_PROFILE_PROGRAM
JDM_EXPLAIN_PROGRAM
JDM_PREDICT_PROGRAM
JDM_XFORM_PROGRAM
JDM_IMPORT_PROGRAM
JDM_EXPORT_PROGRAM
JDM_SQL_APPLY_PROGRAM
JDM_TEST_PROGRAM
JDM_BUILD_PROGRAM
BSLN_MAINTAIN_STATS_PROG
AUTO_SQL_TUNING_PROG
AQ$_PROPAGATION_PROGRAM
HS_PARALLEL_SAMPLING
ORA$AGE_AUTOTASK_DATA
AUTO_SPACE_ADVISOR_PROG
GATHER_STATS_PROG
FILE_WATCHER_PROGRAM
PURGE_LOG_PROG
19行が選択されました。
SQL>
|
(2)プログラム作成
SQL> BEGIN
DBMS_SCHEDULER.CREATE_PROGRAM (
program_name => 'ora_program1',
program_action => 'date',
program_type => 'EXECUTABLE',
comments => 'My comments here');
END;
/
PL/SQLプロシージャが正常に完了しました。
SQL>
|
(3)プログラム確認
ORA_PROGRAM1が追加されたことをを確認します。
SQL> set pages 1000
SQL> SELECT PROGRAM_NAME FROM DBA_SCHEDULER_PROGRAMS ;
PROGRAM_NAME
------------------------------------------------------------
ORA_PROGRAM1
MY_PROGRAM1
JDM_XFORM_SEQ_PROGRAM
JDM_PROFILE_PROGRAM
JDM_EXPLAIN_PROGRAM
JDM_PREDICT_PROGRAM
JDM_XFORM_PROGRAM
JDM_IMPORT_PROGRAM
JDM_EXPORT_PROGRAM
JDM_SQL_APPLY_PROGRAM
JDM_TEST_PROGRAM
JDM_BUILD_PROGRAM
BSLN_MAINTAIN_STATS_PROG
AUTO_SQL_TUNING_PROG
AQ$_PROPAGATION_PROGRAM
HS_PARALLEL_SAMPLING
ORA$AGE_AUTOTASK_DATA
AUTO_SPACE_ADVISOR_PROG
GATHER_STATS_PROG
FILE_WATCHER_PROGRAM
PURGE_LOG_PROG
21行が選択されました。
SQL>
|
◎-Oracleジョブのネーミングルール
◎-Oracleジョブ作成前準備(プログラム作成)
◎-Oracleジョブ作成前準備(スケジュール作成)
◎-Oracleジョブ作成
◎-Oracleジョブ変更
◎-Oracleジョブ停止
◎-Oracleジョブ削除
◎-Oracleジョブ無効化・有効化
◎-イベントを使用したOracleジョブの開始
◎-Oracleジョブチェーン作成
◎-Oracleジョブの優先度付け
◎-Oracleジョブの監視
|
スポンサードリンク
|