ORACLE—005:创建JOB(二)

如果需要创建带参数的job,如何创建呢。

我们直接将参数声明,并赋值,然后传给job调用的存储过程即可。

例如,存储过程名为Pro_Test_JOB,参数共有一个,是VARCHAR2类型。

创建JOB如下:

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


 

 

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