Oracle 10g之前,可以使用dbms_job来管理定时任务。
10g之后,Oracle引入dbms_scheduler来替代先前的dbms_job,
在功能方面,它比dbms_job提供了更强大的功能和更灵活的机制/管理。
DBMS_JOB包
DBMS_JOB包中包含有许多过程和方法
名称 | 类型 | 描述 |
DBMS_JOB.ISUBMIT | 过程 | 提交一个新任务,用户指定一个任务号 |
DBMS_JOB.SUBMIT | 过程 | 提交一个新任务,系统指定一个任务号 dbms_job.submit( JOB OUT BINARY_INTEGER, WHAT IN VARCHAR2, NEXT_DATE IN DATE DEFAULT SYSDATE, INTERVAL IN VARCHAR2 DEFAULT 'NULL', NO_PARSE IN BOOLEAN DEFAULT FALSE, INSTANCE IN BINARY_INTEGER DEFAULT 0, FORCE IN BOOLEAN DEFAULT FALSE); |
DBMS_JOB.REMOVE | 过程 | 从队列中删除一个已经存在的任务 dbms_job.removejob IN BINARY_INTEGER); |
DBMS_JOB.CHANGE | 过程 | 更改用户设定的任务参数 dbms_job.change( job IN BINARY_INTEGER, what IN VARCHAR2, next_date IN DATE, interval IN VARCHAR2, instance IN BINARY_INTEGER DEFAULT NULL, force IN BOOLEAN DEFAULT FALSE); exec dbms_job.change(100,NULL,NULL,'SYSDATE+3'); |
DBMS_JOB.WHAT | 过程 | 更改PL/SQL任务定义 |