oracle 创建定时任务

 1 --1.创建测试表
 2 create table job_test(id integer,add_time date);
 3 
 4 --2.创建存储过程
 5 create or replace procedure prc_job_test is  
 6 begin  
 7   insert into job_test values (SEQ_TM_ID.nextval, sysdate);  
 8   commit;  
 9 end prc_job_test;
10 
11 --3.创建任务
12 declare  
13   tm_job number;  
14 begin  
15   sys.dbms_job.submit(tm_job, --任务名称  
16                       'prc_job_test;',--执行的过程  
17                       sysdate,--执行时间  
18                       'sysdate+1/(24*60*10)');--下次执行时间  
19 end;
20 
21 --4.查询任务
22 select * from dba_jobs;
23 
24 select t.*, t.rowid from job_test t order by add_time desc
25 
26 --5.执行任务
27 begin  
28 dbms_job.run(25);--25为任务的id  
29 end;   
30 
31 --6.停止任务
32 begin
33  dbms_job.broken(25, true, sysdate);
34  commit;
35 end;
36 
37 --7.删除任务
38 begin  
39 dbms_job.remove(25);  
40 end;   
复制代码
1 --8.删除任务脚本
2 begin
3   for v in(select job from dba_jobs where what = 'prc_job_test;') loop
4     dbms_job.remove(v.job);
5   end loop;
6   commit;
7 end;
复制代码


复制代码

完整脚本例子:

复制代码
 1 --1.删除表脚本
 2 DECLARE num NUMBER ;
 3 BEGIN
 4   SELECT
 5     COUNT (1) INTO num
 6   FROM
 7     user_tables
 8   WHERE
 9     TABLE_NAME = 'JOB_TEST' ;
10   IF num = 1 THEN
11     EXECUTE IMMEDIATE '
12 drop table JOB_TEST
13     ' ;
14   END IF;
15 END;
16 /
17 --2.创建测试表
18 create table job_test(id integer,add_time date);
19 /
20 --3.创建存储过程
21 create or replace procedure PRC_JOB_TEST is  
22 begin  
23   insert into job_test values (1, sysdate);  
24   commit;  
25 end prc_job_test;
26 /
27 --4.删除任务脚本
28 begin
29   for v in(select job from dba_jobs where what = 'PRC_JOB_TEST;') loop
30     dbms_job.remove(v.job);
31   end loop;
32   commit;
33 end;
34 /
35 --5.创建任务
36 declare  
37   tm_job number;  
38 begin  
39   sys.dbms_job.submit(tm_job, --任务名称  
40                       'PRC_JOB_TEST;',--执行的过程  
41                       sysdate,--执行时间  
42                       'sysdate+1/(24*60*10)');--下次执行时间  
43   COMMIT;
44 end;

原文链接:https://www.cnblogs.com/zyx-/p/8032954.html

猜你喜欢

转载自www.cnblogs.com/irishua/p/11263049.html
今日推荐