Можно ли создать задание из задания DBMS_SCHEDULER? - PullRequest
1 голос
/ 30 сентября 2011

Создание задания из задания с использованием DBMS_JOB выдает:

ORA-32317: cannot run a job from a job

Кто-нибудь знает, было ли снято это ограничение в DBMS_SCHEDULER?

1 Ответ

1 голос
/ 30 сентября 2011

Да, вы можете:

DECLARE
BEGIN
  dbms_scheduler.create_job  
 (job_name => 'TEST1',  
  job_type=> 'PLSQL_BLOCK',
  job_action=>'BEGIN dbms_scheduler.create_job  
              (job_name => ''TEST2'',  
               job_type=> ''PLSQL_BLOCK'',
               job_action=>''DECLARE v_result NUMBER; BEGIN SELECT 1 INTO v_result FROM dual; END;'',  
               start_date=>SYSDATE,
               repeat_interval=>''FREQ=DAILY'',
               end_date=>SYSDATE+1,
               enabled=>true,  
               auto_drop=>false,  
               comments=>''Job submitted FROM a job''); end;',  
  start_date=>SYSDATE,
  repeat_interval=>'FREQ=DAILY',
  end_date=>SYSDATE+1,
  enabled=>true,  
  auto_drop=>false,  
  comments=>'Job to submit a job');  
END;  

Это демонстрирует концепцию.Вы можете вызвать процедуру вместо встроенного блока PL / SQL, чтобы выполнить вашу работу.Очевидно, что вы можете настроить любой или все параметры для процедуры create_job.Я предполагаю, что вы могли бы породить работу, которая порождает еще одну работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...