Oracle job + 存储过程 的使用示例

2014-11-24 18:23:10 · 作者: · 浏览: 0

导读:


第一部分:下面的步骤完整的演示了job的创建过程:


第二部分:job的相关知识:


第三部分:实际应用


发现:删除jobs的时候必须使用该job的owner来做,sys也不能删别人的job!(先这样理解,以后再更正。嘿嘿·)


正文:


第一部分:下面的步骤完整的演示了job的创建过程:


1,先创建一张pig表,字段为a日期格式


SQL> create table pig(a date);


Table created


SQL> commit;


Commit complete


2,创建一个存储过程bb作用是往pig表中插入数据


SQL> create or replace procedure bb as


2 begin


3 insert into pig values(sysdate);


4 end;


5 /


Procedure created



3,创建一个job,名称为job2009;作用是每分钟(60×24=1440)执行一次存储过程bb。


SQL> variable job2009 number;


SQL> begin


2 dbms_job.submit(:job2009,'bb;',sysdate,'sysdate+1/1440');


3 end;


4 /


注意:这里系统自动生成job id为41


PL/SQL procedure successfully completed


job2009


---------


41


4,运行job2009


SQL> begin


2 dbms_job.run(:job2009);


3 end;


4 /


PL/SQL procedure successfully completed


job2009


---------


41


5,删除job2009


SQL> begin


2 dbms_job.remove(:job2009);


3 end;


4 /