PBからOracleのジョブをコールする方法

Oracleのジョブを呼び出すには、OracleのDBMS_SCHEDULERパッケージを使用できます。以下にOracleジョブの呼び出し方を示すサンプルコードを示します。

  1. ジョブを作成する:
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はジョブの説明です。

  1. ジョブを開始する
BEGIN
  DBMS_SCHEDULER.RUN_JOB('my_job');
END;
/

作成済みのジョブを開始するには、DBMS_SCHEDULER.RUN_JOB プロシージャを使用します。上記の例の場合、「my_job」はジョブの名前です。

  1. ジョブを停止する
BEGIN
  DBMS_SCHEDULER.STOP_JOB('my_job', TRUE);
END;
/

DBMS_SCHEDULER.STOP_JOBプロシージャを使用して、実行中のジョブを中止します。上記の例では、’my_job’はジョブ名です。

上記の操作を実行するには、適切な権限を持っている必要があります。

bannerAds