ORACLE—006:移除和停止JOB

一般来说都是通过sql来删除或者停止某个job。

移除JOB:remove

停止JOB:broken

首先通过

 select * from user_jobs;

查找出JOB的ID,然后调用

dbms_job.broken或

dbms_job.remove进行移除和停止。sql如下。

以移除一个job为例。

1、通过JOB的what值来查找job,并移除。

declare
  job number;
  v_count number;
begin 
    SELECT COUNT(*)
    INTO v_count
    FROM user_jobs uj
    WHERE upper(uj.what) = 
    UPPER(‘创建JOB时的what值‘);
    
    if v_count > 0 then
      SELECT uj.JOB
      INTO job
      FROM user_jobs uj
      WHERE upper(uj.what) = 
      UPPER(‘创建JOB时的what值‘);
    dbms_job.remove(job);
    commit;
  end if;
end;


2、本来就知道JOB的id则直接调用即可。

JOB的id是user_jobs的JOB字段的值。

 begin
    dbms_job.broken.remove(JOB1的ID);
    dbms_job.remove(JOB2的ID);
 end;

 

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