When you back in the day wanted to schedule or run something in the backgound you used DBMS_JOB. With the beginning of release 10g of the database new functionality was introduced to accomplish this, the DBMS_SCHEDULER. DBMS_SCHEDULER is so much more flexible the DBMS_JOB and makes everything easier, some examples: To set up your intervals you just specify the parameter repeat_interval. MON-FRI 22.00: repeat_interval=> 'FREQ=DAILY; BYDAY=MON,TUE,WED,THU,FRI; BYHOUR=22;' Every hour, every day: repeat_interval => 'FREQ=HOURLY;INTERVAL=1' Every monday, 05:00: repeat_interval=> 'FREQ=DAILY; BYDAY=MON; BYHOUR=5;' You will not get the problem with shifting start times that you have with DBMS_JOB. Possible to create chains of jobs that are dependent of each other. Possible to schedule: - Execution of host scripts. - E-mail notifications. - Execute host scripts on remote servers (requires an agent on the remote server). - Execute jo...