Oracle 简单的创建一个定时任务job 没有什么前置步骤,无非就是把存储过程或者SQL提前写好,就不说了,直接执行一下下面的语句即可创建一个job - declare
- job number;
- BEGIN
- DBMS_JOB.SUBMIT(
- JOB => job, /*自动生成JOB_ID,放着就行,不用管*/
- WHAT => 'send_email_main;', /*换成你需要执行的存储过程名称或SQL,如果是包则要具体到方法*/
- NEXT_DATE => sysdate+1/(24*60), /*初次执行时间-设置为当前时间的1分钟后*/
- INTERVAL => 'TRUNC(SYSDATE + 1)+(7*60+55)/(24*60)' /*每天早上7点55执行*/
- );
- commit;
- end;
复制代码 创建以后可以通过执行下面的语句查询当前数据库的job(第一列为job_id)创建job的语句的参数就这些 比较谜团的就是INTERVAL部分,以下是从网上各个地方看到的感觉会常用的内容,使用的话直接替换或者加加改改就行 - begin
- DBMS_JOB.RUN(job_id); /*job的id*/
- end;
复制代码
|