ORACLE—005:创建JOB(一)

JOB在实际应用中,使用很多。一般用户定时执行某些函数,存储过程等。下面看看如何创建并启动JOB。

例如,使用job定时执行某个存储过程。

存储过程名:Pro_Test_JOB

执行间隔:2小时,

sql语句如下

declare
  job     number;
  v_count number;
begin 
    SELECT COUNT(*)
    INTO v_count
    FROM user_jobs uj
    WHERE  upper(uj.what) = 
    UPPER(‘Pro_Test_JOB;‘);
    
    if v_count = 0 then
      sys.dbms_job.submit(job => job, 
                      what => 
                      ‘Pro_Test_JOB;‘, 
                      next_date =>sysdate , 
                      interval => ‘sysdate+2/24‘);
    dbms_job.run(job);
    commit;
  end if;
end;

这里有几个主要参数要说明一下。

job-是指JOB的ID,自动生成的。
what-job的内容,如果带参数的job,此处可以是一段脚本。

next_date-下次执行时间。

interval-执行频率。

此处是不带参数的job,如果需要输入参数如何写sql呢,请看下一篇文章。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。