RUN_JOB プロシージャは、ジョブを即座に実行するために使用されます。
ジョブが有効な場合、Schedulerは自動的にそのジョブを実行します。ジョブのスケジュールに従って実行するために RUN_JOB を呼び出す必要はありません。RUN_JOB は、通常の計画外で実行されるジョブを実行するためにのみ呼び出します。
機能の適用範囲
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
DBMS_SCHEDULER.RUN_JOB (
job_name IN VARCHAR2,
force IN BOOLEAN );
パラメータ説明
パラメータ |
説明 |
|---|---|
| job_name | ジョブ名、またはカンマ区切りの名前リストを指定します。リスト内の各項目は既存ジョブ名であり、必要に応じてスキーマ名とピリオド区切り文字を追加できます。複数のデスティネーションを指定した場合、そのジョブはすべてのデスティネーションで実行されます。 |
| force | ジョブを強制的に実行するかどうかを指定します。TRUE に設定すると強制実行されます。 |
使用方法
ジョブが無効な場合、ジョブを実行する前に以下の有効性チェックが実行されます:
ジョブは有効なジョブクラスを指しています。
ジョブ所有者はジョブクラスに対して
EXECUTE権限を持っています。プログラムを参照している場合、そのプログラムは存在している必要があります。
特定のプログラムを参照している場合、ジョブ所有者はそのプログラムを実行する権限を持っています。
すべてのパラメータ値が設定されている(またはデフォルト値がある)こと。
例
ジョブ MYJOB と SYS.HRJOB を即座に実行します。
BEGIN
DBMS_SCHEDULER.RUN_JOB(
JOB_NAME => 'MYJOB, SYS.HRJOB',
force => TRUE);
END;