PBからOracleのジョブをコールする方法
Oracleのジョブを呼び出すには、OracleのDBMS_SCHEDULERパッケージを使用できます。以下にOracleジョブの呼び出し方を示すサンプルコードを示します。
- ジョブを作成する:
BEGIN
DBMS_SCHEDULER.CREATE_JOB(
job_name => 'my_job',
job_type => 'PLSQL_BLOCK',
job_action => 'BEGIN my_procedure; END;',
start_date => SYSTIMESTAMP,
enabled => TRUE,
auto_drop => FALSE,
comments => 'This is my job description.'
);
END;
/
上のコードで、job_nameはジョブ名で、job_typeはジョブのタイプ(PL/SQLブロックやストアドプロシージャ、外部スクリプトなど)を指定し、job_actionはジョブの内容で、start_dateはジョブの開始時刻で、enabledはジョブが有効かを表し、auto_dropはジョブの終了時に自動削除するかを表し、commentsはジョブの説明です。
- ジョブを開始する
BEGIN
DBMS_SCHEDULER.RUN_JOB('my_job');
END;
/
作成済みのジョブを開始するには、DBMS_SCHEDULER.RUN_JOB プロシージャを使用します。上記の例の場合、「my_job」はジョブの名前です。
- ジョブを停止する
BEGIN
DBMS_SCHEDULER.STOP_JOB('my_job', TRUE);
END;
/
DBMS_SCHEDULER.STOP_JOBプロシージャを使用して、実行中のジョブを中止します。上記の例では、’my_job’はジョブ名です。
上記の操作を実行するには、適切な権限を持っている必要があります。