Oracle 创建与删除job小例子

--创建测试表
create table TEST(a date);

--创建一个自定义过程
create or replace procedure MYPROC as 
begin
  insert into TEST values(sysdate);
end;

--创建JOB
DECLARE
X NUMBER;
BEGIN
  SYS.DBMS_JOB.SUBMIT
    ( job       => X 
     ,what      => 'MYPROC;'
     ,next_date => sysdate
     ,interval  => 'SYSDATE+1/(24*60)'--每天1440分钟,即一分钟运行一次过程
     ,no_parse  => TRUE
    );
  --运行job
  dbms_job.run(job =>X);

  SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));
END;


--关掉job
select * from dba_jobs order by job #获得job号,job字段所对应的数字。

begin
dbms_job.remove(24);#24为上面找到的要关掉的job号
end;
--执行完后别忘了提交

你可能感兴趣的:(Oracle)