Sidebar

En oracle es posible calendarizar dos jobs para que se ejecuten a la misma hora, pero cómo puedo darle prioridad a uno de ellos para que se ejecute primero.

 Supongamos que tenemos dos jobs, JOB1 y JOB2, y queremos que el JOB1 sea ejecutado primero aunque estén programados a la misma hora. El valor 1 índica mayor prioridad y el 5 menor prioridad.

BEGIN
DBMS_SCHEDULER.SET_ATTRIBUTE (
   name           =>   'JOB1',
   attribute      =>   'job_priority',
   value          =>   1);
END;
/

BEGIN
DBMS_SCHEDULER.SET_ATTRIBUTE (
   name           =>   'JOB2',
   attribute      =>   'job_priority',
   value          =>   2);
END;
/

Podemos verificar que el atributo fue modificado con la siguiente sentencia:

SELECT JOB_NAME, JOB_PRIORITY FROM DBA_SCHEDULER_JOBS;

Tips BD