oracle中job的简单实例

oracle job简单的说,就是oracle提供的一个定期执行某个存储过程或者包体的功能。

主要的使用情景
定时在后台执行相关操作:如每天晚上0点将一张表的数据保存到另一张表中,2:定时备份数据库等

一:创建测试表

  SQL> create table TEST(a date);


  
  表已创建。
二:创建一个自定义过程

SQL> create or replace procedure MYPROC as
   2 begin
   3 insert into TEST values(sysdate);
   4 end;
   5 /
  
  过程已创建。


  

三:创建JOB

SQL> variable job1 number;
  SQL> 
  SQL> begin
   2 dbms_job.submit(:job1,'MYPROC;',sysdate,'sysdate+1/1440');  --每天1440分钟,即一分钟运行test过程一次
   3 end;
   4 /
  
  PL/SQL 过程已成功完成。


四:运行JOB

SQL> begin
   2 dbms_job.run(:job1);
   3 end;
   4 /
  
  PL/SQL 过程已成功完成。



五:查询job

SQL> select to_char(a,'yyyy/mm/dd hh24:mi:ss') 时间 from TEST;
  
  时间
  -------------------
  2001/01/07 23:51:21
  2001/01/07 23:52:22
  2001/01/07 23:53:24


六:删除JOB

SQL> begin
   2 dbms_job.remove(:job1);
   3 end;
   4 / bitsCN_com 
  
  PL/SQL 过程已成功完成。


 

你可能感兴趣的:(oracle)