A Scheduler should be able to be controlled with a minimum of two basic parameters, what you want to launch, and when you want to start launching it (plus how often this task should be launched). A good Scheduler has additional capabilities such as monitoring, repetition control, suspending, resuming, and cancelling tasks. In previous Oracle versions (8i to 9i) this was performed by means of the DBMS_JOB
. The problem with this package was that the scheduling mechanism required you to provide a date expression, not quite readable when the scheduling was a bit more complex than usual. DBMS_JOB
was not originally intended to be a Scheduler, it was simply designed to be a job initialization utility limited to jobs inside the database.
When dbms_scheduler
was designed (it was originally derived from OEM's mgmt_jobs)
, Oracle had in mind a tool that could make the user's life easier. This tool was able to manage complex schedules, create scheduling patterns that could...