zoukankan      html  css  js  c++  java
  • job定时任务

    --创建存储过程:P_O_DEAL_REINSURE
    --脚本要一个个执行,不能批量执行
    --创建定时任务
    DECLARE
      JOB NUMBER;
    BEGIN
      DBMS_JOB.SUBMIT(  
            JOB => JOB,
            WHAT => 'P_O_DEAL_REINSURE;',   
            NEXT_DATE => SYSDATE,
            INTERVAL => 'TRUNC(SYSDATE,''MI'')+10/(24*60)' /*每隔10分钟执行一次*/
          );  
      COMMIT;
    END;

    --查看定时任务ID
    SELECT * FROM DBA_JOBS A WHERE A.WHAT LIKE '%P_O_DEAL_REINSURE%';

    --启动定时任务
    DECLARE
    BEGIN
       DBMS_JOB.RUN(657); /*657 JOB的ID*/
       COMMIT;
    END;

    --终止定时任务
    DECLARE
    BEGIN   
      DBMS_JOB.BROKEN(657,TRUE,SYSDATE);
    COMMIT;
    END;

    --修改时间间隔每天凌晨1点执行
    DECLARE
    BEGIN
      DBMS_JOB.INTERVAL(657,INTERVAL => 'TRUNC(SYSDATE) + 1 +1/ (24)');
      COMMIT;
    END;

    --修改下次执行时间
    DECLARE
    BEGIN
       DBMS_JOB.NEXT_DATE(657,TO_DATE('2020-03-21 01:00:00','YYYY-MM-DD HH24:MI:SS'));
       COMMIT;
    END;

    转:

    JOB的创建,定时,执行

    --建表 

    1
    2
    3
    4
    5
    create table test_job(para_date date); 
    commit; 
    insert into test_job values(sysdate); 
    commit;
    select * from test_job;

    --建立存储过程  

    1
    2
    3
    4
    create or replace procedure test_jobproce   as 
    begin 
    insert into test_job values(sysdate); 
    end test_jobproce;

    --建立job 

    --建立job后默认是执行的 

    1
    2
    3
    4
    5
    declare  test_job_really number; 
    begin 
    dbms_job.submit(test_job_really,'test_jobproce;',sysdate,'sysdate+1/1440'); 
    commit; 
    end;

     执行时间汇总:

    1、 每分钟执行

    1
    Interval => TRUNC(sysdate,’mi’) + 1 / (24*60)

    2、 每天定时执行

    例如:每天的凌晨2点执行

    1
    Interval => TRUNC(sysdate) + 1 +2 / (24)

    3、 每周定时执行

    例如:每周一凌晨2点执行

    1
    Interval => TRUNC(next_day(sysdate,2))+2/24

    4、 每月定时执行

    例如:每月1日凌晨2点执行

    1
    Interval =>TRUNC(LAST_DAY(SYSDATE))+1+2/24

    5、 每季度定时执行

    例如每季度的第一天凌晨2点执行

    1
    Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 2/24

    6、 每半年定时执行

    例如:每年7月1日和1月1日凌晨2点

    1
    Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+2/24

    7、 每年定时执行

    例如:每年1月1日凌晨2点执行

    1
    Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+2/24

    ---停止job  

    25是建立的job test_job_really ,可以通过dba_jobs查看

    1
    2
    3
    4
    begin 
    dbms_job.broken(25,true); 
    commit; 
    end;

    --启动job 

    1
    2
    3
    4
    begin 
    dbms_job.run(25); 
    commit; 
    end;

    --删除job 

    1
    2
    3
    4
    begin  
    dbms_job.remove(25); 
    commit; 
    end;

    --查看执行结果 

    1
    select  * from test_job order by test_job.para_date desc;

    --查看job 

    1
    select * from sys.user_jobs

    --使用下面的SQL查询是否JOB还在Running,前提是需要job执行时间不能过短 

    1
    select * from dba_jobs_running

    --除了submit参数外,其余的几个参数有: 

    --运行job

    1
    dbms_job.run(v_job);

    --停止一个job,里面参数true也可是false,next_date(某一时刻停止)也可是sysdate(立刻停止)。 

    1
    dbms_job.broke(v_job,true,next_date);

    --删除某个job 

    1
    2
    dbms_job.remove(v_job); 
    dbms_job.what(v_job,'sp_fact_charge_code;');

    --修改某个job名 修改下一次运行时间 

    1
    dbms_job.next_date(v_job,sysdate);

    -修改job

    1
    2
    3
    4
    begin
      dbms_job.change(62 ,'MY_JOP;', sysdate,'sysdate+2/(24*60)' );
      commit;
    end;<br>转:http://www.cndba.cn/account/article/details/128
  • 相关阅读:
    再谈TextField
    IOS-TextField知多少
    leftBarButtonItems
    LeftBarButtonItems,定制导航栏返回按钮
    Apple Mach-O Linker (id) Error "_OBJC_CLASS...错误解决办法 Apple Mach-O Linker (id) Error "_OBJC_CLASS...错误解决办法
    Unrecognized Selector Sent to Instance问题之诱敌深入关门打狗解决办法
    UNRECOGNIZED SELECTOR SENT TO INSTANCE 问题快速定位的方法
    Present ViewController,模态详解
    UILABEL AUTOLAYOUT自动换行 版本区别
    iOS自动布局解决警告Automatic Preferred Max Layout Width is not available on iOS versions prior to 8.0
  • 原文地址:https://www.cnblogs.com/libin6505/p/12720110.html
Copyright © 2011-2022 走看看