DBMS_SCHEDULERシステムパッケージは、スケジュールタスクを管理するために使用されます。PLプログラムからこれらの関数とプロシージャを呼び出すことができるように、一連の関数とプロシージャを提供します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供しています。
DBMS_SCHEDULER権限の説明
DBMS_SCHEDULERシステムパッケージのオブジェクト権限は、ユーザーに直接付与する必要があります。ロールを通じてSchedulerオブジェクト(例えばジョブJob)に付与された権限は認識されません。
SYSのみがSYSスキーマ内のオブジェクトに対して操作を実行できます。
使用方法
DBMS_SCHEDULERシステムパッケージの一部のプロシージャでは、カンマで区切られたオブジェクト名リストを使用できます。提供された名前リスト内の特定のオブジェクトからエラーが返され始めた場合、Schedulerはそのエラーが返された最初のオブジェクトでリストの実行を停止し、リスト内の残りのオブジェクトに必要なタスクを実行しません。
DBMS_SCHEDULERシステムパッケージの実行時に、特定のオブジェクトが存在しない場合、PL例外が返されます。
DBMS_SCHEDULERサブルーチンの概要
以下の表は、OceanBaseデータベースの現行バージョンでサポートされているDBMS_SCHEDULERサブルーチンとその簡潔な説明を示しています。
| サブルーチン | 説明 |
|---|---|
| CREATE_JOB | ジョブを作成します。 |
| CREATE_JOB_CLASS | JOBクラスのログを作成します。 |
| CREATE_PROGRAM | プログラムを作成します。 |
| DEFINE_PROGRAM_ARGUMENT | プログラムパラメータを定義します。その値は文字列リテラルとしてプログラムに渡すことができます。 |
| DISABLE | プログラム、ジョブなどを無効にします。 |
| DROP_JOB | 1つのジョブ、またはジョブクラス内のすべてのジョブを削除します。 |
| DROP_PROGRAM | 1つのプログラムを削除します。 |
| DROP_JOB_CLASS | JOBクラスのログを削除するために使用されます。 |
| ENABLE | プログラム、ジョブなどを有効にします。 |
| GENERATE_JOB_NAME | ジョブに一意の名前を生成します。 |
| RUN_JOB | ジョブを即時実行します。 |
| SET_ATTRIBUTE | ジョブ、プログラム、または他のSchedulerオブジェクトのプロパティを変更します。 |
| SET_JOB_ARGUMENT_VALUE | ジョブパラメータの値を設定します。 |
| STOP_JOB | 実行中のジョブを終了するために使用されます。 |
| PURGE_LOG | JOBログをクリーンアップするために使用されます。 |