Welcome 微信登录

首页 / 数据库 / MySQL / Oracle中job的简单实例

Oracle job简单的说,就是oracle提供的一个定期执行某个存储过程或者包体的功能。主要的使用情景
定时在后台执行相关操作:如每天晚上0点将一张表的数据保存到另一张表中,2:定时备份数据库等
一:创建测试表
  1. SQL> create table TEST(a date);  
表已创建。
二:创建一个自定义过程
  1. SQL> create or replace procedure MYPROC as  
  2. 2 begin  
  3. 3 insert into TEST values(sysdate);  
  4. 4 end;  
  5. 5 /  
  6.   
  7. 过程已创建。  
三:创建JOB
  1. SQL> variable job1 number;  
  2. SQL>   
  3. SQL> begin  
  4. 2 dbms_job.submit(:job1,"MYPROC;",sysdate,"sysdate+1/1440"); --每天1440分钟,即一分钟运行test过程一次  
  5. 3 end;  
  6. 4 /  
  7.   
  8. PL/SQL 过程已成功完成。  
四:运行JOB
  1. SQL> begin  
  2. 2 dbms_job.run(:job1);  
  3. 3 end;  
  4. 4 /  
  5.   
  6. PL/SQL 过程已成功完成。  
五:查询job
  1. SQL> select to_char(a,"yyyy/mm/dd hh24:mi:ss") 时间 from TEST;  
  2.   
  3. 时间  
  4. -------------------  
  5. 2001/01/07 23:51:21  
  6. 2001/01/07 23:52:22  
  7. 2001/01/07 23:53:24  
六:删除JOB
  1. SQL> begin  
  2. 2 dbms_job.remove(:job1);  
  3. 3 end;  
  4. 4 / bitsCN_com   
  5.   
  6. PL/SQL 过程已成功完成。  
更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle rownum记忆PHP中对MySQL的操作相关资讯      oracle数据库教程 
  • Oracle raw数据类型介绍  (01/29/2013 10:05:53)
  • 监听器注册与ORA-12514 错误分析  (11/13/2012 14:30:08)
  • Oracle SQL的cursor理解  (11/13/2012 14:16:17)
  • Oracle 如何强制刷新Buffer Cache  (01/29/2013 10:02:46)
  • dblink致Oracle库的SCN变成两库的  (11/13/2012 14:24:41)
  • Linux操作系统下完全删除Oracle数  (11/13/2012 08:25:52)
本文评论 查看全部评论 (0)
表情: 姓名: 字数