zoukankan      html  css  js  c++  java
  • 使用dbms_scheduler包创建定时任务

    本文使用dbms_scheduler的create_job创建执行存储过程的定时任务

    • 创建一个job
      • job_type指定'STORED_PROCEDURE'
      • job_action中填入要执行的存储过程名字
      • start_date指定起始时间,用于计算后续执行的时间
      • repeat_interval说明时间间隔,可以参考Calendaring Syntax
    BEGIN
    dbms_scheduler.create_job(
            job_name       => 'test_scan',
            job_type       => 'STORED_PROCEDURE',
            job_action     => 'p_task_scan_used_test',
            start_date     =>  sysdate,
            repeat_interval=>  'FREQ=MINUTELY;INTERVAL=10');
    END;
    
    • 创建后通过系统视图检查
    select * from user_scheduler_jobs;
    
    • 取消AUTO_DROP
      默认会在任务正确执行完成后删除任务,此处修改该属性不删除。
    begin
    dbms_scheduler.set_attribute(
             name      => 'test_scan',
             attribute => 'AUTO_DROP',
             value     => FALSE);
    end;
    
    • 执行时传入参数

      • 设置参数个数
      begin
      dbms_scheduler.set_attribute(
               name      => 'mac_scan',
               attribute => 'NUMBER_OF_ARGUMENTS',
               value     => 2);
      end;
    
    • 设置参数值
      begin
      dbms_scheduler.SET_JOB_ARGUMENT_VALUE (
          job_name => 'test_scan',
          argument_position => 1,
          argument_value => '1000');
      end;
          
      begin
      dbms_scheduler.SET_JOB_ARGUMENT_VALUE (
          job_name => 'test_scan',
          argument_position => 2,
          argument_value => '5000');
      end;
    
    • 测试job是否可以正确执行
    select * from user_scheduler_job_run_details;
    select * from user_scheduler_job_log;
    
    • 启动定时任务
    begin
        dbms_scheduler.enable(
            name =>  'test_scan');
    end;
    

    至此,定时任务部署完毕。
    -- EOF --

  • 相关阅读:
    1032. Sharing (25)
    1031. Hello World for U (20)
    1030. Travel Plan (30)
    1029. Median (25)
    1028. List Sorting (25)
    1026. Table Tennis (30)
    win10 tortoiseSVN文件夹及文件图标不显示解决方法
    qrcode.react和jquery.qrcode生成二维码
    js来获取所有屏幕适配的总结
    handsontable整理
  • 原文地址:https://www.cnblogs.com/shenfeng/p/dbms_scheduler_create_job.html
Copyright © 2011-2022 走看看