1

毎晩、3 つのマテリアライズド ビューを同時に更新するスケジュールを設定しようとしています。以下のコードを使用しました

BEGIN
DBMS_SCHEDULER.CREATE_JOB 
(
JOB_NAME            => 'REFRESH_MVIEW',
JOB_TYPE            => 'PLSQL_BLOCK',
JOB_ACTION          => 'BEGIN DBMS_MVIEW.REFRESH("m_view1, m_view2, m_view3",''C''); END;',
NUMBER_OF_ARGUMENTS => 0,
START_DATE          => SYSTIMESTAMP,
REPEAT_INTERVAL     => 'FREQ=DAILY; BYHOUR=0',
END_DATE            => NULL,
ENABLED             => TRUE,
AUTO_DROP           => FALSE,
COMMENTS            => 'JOB TO REFRESH'
);
END;

しかし、ジョブの実行後に次のエラーが発生します

ORA-12012: ジョブ 57179 の自動実行でエラーが発生しました

プロシージャ名に 30 文字の制約があることを理解しています。ということは、仕事を 3 つの異なる仕事に分けなければならないということですか。どこが間違っているのか教えてください。

前もって感謝します !

4

1 に答える 1