天天看点

oracle dba 书上的一个DBMS_JOB的例子

//书本实验

//每隔一分钟将系统当前时间插入基表displaytime中

create table displaytime(

job_no number(7),

current_date date);

create or replace procedure displaycurrenttime as

v_sysdate varchar2(50);

n number(7):=0;

begin

v_sysdate:=To_Char(sysdate,'yyyy.mm.dd hh24:mi:ss');

select NVL(max(job_no),0) into n from displaytime;

n:=n+1;

insert into displaytime values(n,sysdate);

end displaycurrenttime;

/

VARIABLE job_no1 number;

begin

dbms_job.submit(:job_no1,'displaycurrenttime;',sysdate,'sysdate+1/1440');

end;

/

begin

dbms_job.run(:job_no1);

end;

/

--实验完成

--接下来将本作业停止,要不然太费系统资源了:)

begin

dbms_job.remove(:job_no1);

end;

/