oracle中JOB的使用

来源:互联网 发布:微信表白墙源码 编辑:程序博客网 时间:2024/05/20 00:52

创建JOB

DECLARE    JOBNO NUMBER;BEGIN    DBMS_JOB.SUBMIT(JOBNO,                    WHAT => 'pro_rep_log_statistics;', --pro_rep_log_statistics为存储过程的名称,注意一定要加分号                    INTERVAL => 'TRUNC(sysdate,''mi'') + 1 / (24*60)');   --定义时间间隔为每分钟执行一次    COMMIT;END;

修改job

BEGIN    DBMS_JOB.CHANGE(4,                    'pro_rep_log_statistics;',                    NULL, --下次执行时间必填项,可为null                    'TRUNC(SYSDATE + 1) + 1/24'); --定义时间间隔为每天的凌晨1点执行一次    COMMIT;END;或者BEGIN    DBMS_JOB.CHANGE(4,                    'pro_rep_log_statistics;',                    TO_DATE('2011-08-01 22:00:00', 'yyyy-mm-dd hh24:mi:ss'),                    'sysdate+1'); --定义时间间隔为每天的凌晨12点执行一次    COMMIT;END;

查询所有的jobs

SELECT * FROM USER_JOBS;

运行job

BEGIN    DBMS_JOB.RUN(4);END;

删除job

BEGIN    DBMS_JOB.REMOVE(5);END;
0 0
原创粉丝点击