CREATE_PROGRAM プロシージャは、プログラムを作成するために使用されます。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
DBMS_SCHEDULER.CREATE_PROGRAM (
program_name IN VARCHAR2,
program_type IN VARCHAR2,
program_action IN VARCHAR2,
number_of_arguments IN PLS_INTEGER DEFAULT 0,
enabled IN BOOLEAN DEFAULT FALSE,
comments IN VARCHAR2 DEFAULT NULL);
パラメータの説明
| パラメータ | 説明 |
|---|---|
| program_name | プログラムの名前を指定します。この名前はSQLネームスペース内で一意でなければなりません。例えば、プログラムはスキーマ内のテーブルと同じ名前にすることはできません。名前が指定されていない場合、エラーが発生します。 |
| program_type | 作成するプログラムのタイプを指定します。指定されていない場合、エラーが発生します。 現在サポートされているのは、プログラムがPLまたはJavaストアドプロシージャ、または外部Cサブルーチンであることを指定するための'STORED_PROCEDURE'のみです。このパラメータは、戻り値を持つ関数やINOUTまたはOUTパラメータを持つPLプロシージャをサポートしていません。 |
| program_action | プログラムの操作を指定します。program_actionが指定されていない場合、エラーが発生します。 ストアドプロシージャの場合、program_actionはストアドプロシージャの名前です。プロシージャがジョブ外の他のスキーマにある場合は、スキーマを指定する必要があります。大文字と小文字を区別する必要がある場合は、スキーマ名とストアドプロシージャ名をダブルクォーテーションマークで囲みます。例:job_action_proc=>'"Schema"."myProc"'。 |
| number_of_arguments | プログラムに必要なパラメータの数を指定します。このパラメータが指定されていない場合、デフォルト値は0で、値の範囲は[0,255]です。 |
| enabled | 作成したプログラムを有効にするかどうかを指定します。このプロパティはTRUEまたはFALSEに設定できます。デフォルトはFALSEであり、作成されたジョブは無効です。 TRUEに設定すると、有効性チェックが完了した後、プログラムは有効にして作成されます。デフォルトでは、このプロパティはFALSEに設定されており、作成されたプログラムは無効です。また、ENABLEプロシージャを呼び出してこのプログラムを有効にすることもできます。 |
| comments | プログラムに関するコメントを追加します。デフォルトでは、このプロパティはNULLです。 |
使用方法
デフォルトでは、プログラムは無効な状態で作成されます (enabled パラメータが TRUE に設定されている場合を除く)。ジョブはこのプログラムを実行できません。他のユーザーがプログラムを使用するには、EXECUTE 権限が付与されている必要があります。
例
BEGIN
DBMS_SCHEDULER.CREATE_PROGRAM(
PROGRAM_NAME => 'empprogram',
PROGRAM_TYPE => 'STORED_PROCEDURE',
PROGRAM_ACTION => 'hr.empprogram',
COMMENTS => 'Employee data management');
END;