Oracle でスケジュールされたタスクを作成するには、次の手順を実行します。 1. ジョブ (タスク) を作成します。 3. ジョブを無効にします。ジョブ; 5. ジョブ情報を表示します。たとえば、毎朝午前 8:00 に「my_procedure」という名前のストアド プロシージャを実行する「my_job」という名前のタスクを実行するには、 DBMS_JOB.SUBMIT および DBMS_JOB.ENABLE コマンドを使用します。
#Oracle を使用してスケジュールされたタスクを作成する方法
直接の答え:Oracle の場合 スケジュールされたタスクを作成するには、
DBMS_JOB パッケージを使用できます。
詳細な手順:
1. ジョブ (タスク) を作成します。
<code class="sql">BEGIN DBMS_JOB.SUBMIT( job => 'job_name', -- 任务名称 what => 'begin your_procedure_name; end;', -- 要执行的 PL/SQL 代码 next_date => date '2023-03-08', -- 下次执行时间 interval => 'FREQ=DAILY', -- 重复频率(例如,每天一次) comments => 'your_comments' -- 注释(可选) ); END; /</code>
2. ジョブ # を有効にします。 ##<code class="sql">BEGIN
DBMS_JOB.ENABLE(job => 'job_name');
END;
/</code>
#
<code class="sql">BEGIN DBMS_JOB.DISABLE(job => 'job_name'); END; /</code>
<code class="sql">BEGIN DBMS_JOB.REMOVE(job => 'job_name'); END; /</code>
<code class="sql">SELECT * FROM USER_JOBS WHERE job_name = 'job_name';</code>
「my_job」という名前のタスクを毎朝 8:00 に実行するには、「my_procedure」という名前のストアド プロシージャを実行します。次のコマンドを使用できます:
<code class="sql">BEGIN DBMS_JOB.SUBMIT( job => 'my_job', what => 'begin my_procedure; end;', next_date => 'trunc(sysdate) + 8/24', -- 今天早上 8:00 interval => 'FREQ=DAILY', comments => 'Runs my_procedure daily' ); DBMS_JOB.ENABLE(job => 'my_job'); END; /</code>
以上がOracleでスケジュールされたタスクを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。