1.创建存储过程
- create or replace procedure PROC_TEST is
- begin
- insert into TEST values (‘1’, ‘2’);
- commit;
- end prc_job_test;
- declare
- JOB number;
- begin
- sys.dbms_job.submit(JOB, --任务名称
- what =>'PROC_TEST;',--执行的存储过程
- next-date => sysdate,--执行时间,日期类型
- interval =>'sysdate+1');--执行间隔
- end;
3.查看 任务ID
- select * from dba_jobs where what='PROC_TEST;';
- begin
- dbms_job.run(36);
- end;
5.删除
- begin
- dbms_job.remove(36);
- end;
6.修改
1、修改要执行的操作: job:dbms_job.what(jobno, what);
2、修改下次执行时间:dbms_job.next_date(jobno, next_date);
1、 每分钟执行:TRUNC(sysdate,’mi’) + 1 / (24*60) 2、 每天定时执行:每天的凌晨2点执行TRUNC(sysdate) + 1 +2 / (24) 3、 每周定时执行:每周一凌晨2点执行 TRUNC(next_day(sysdate,2))+2/24 --星期一,一周的第二天 4、 每月定时执行:每月1日凌晨2点执行TRUNC(LAST_DAY(SYSDATE))+1+2/24 5、 每季度定时执行:每季度的第一天凌晨2点执行TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 2/24 6、 每半年定时执行:每年7月1日和1月1日凌晨2点ADD_MONTHS(trunc(sysdate,'yyyy'),6)+2/24 7、 每年定时执行:每年1月1日凌晨2点执行ADD_MONTHS(trunc(sysdate,'yyyy'),12)+2/24
3、修改间隔时间:dbms_job.interval(jobno, interval);
4、启动job: dbms_job.run(jobno);
5、停止job: dbms.broken(jobno, true, nextdate);
详情:http://www.jb51.net/article/92575.htm