【问题标题】:Oracle DBMS_Scheduler RUN DBMS_JOB on 9:10AM and 11:30 AM DailyOracle DBMS_Scheduler 每天上午 9:10 和 11:30 运行 DBMS_JOB
【发布时间】:2021-10-21 12:43:26
【问题描述】:

我想安排一个作业,应该在每个星期六上午 9:10 和 11:45 运行。

我正在尝试创建一个具有以下间隔的工作dbms_scheduler.create_job

,repeat_interval => 'FREQ=WEEKLY; BYDAY=THU; BYHOUR=9,11; BYMINUTE=10,45; BYSECOND=0'

但看起来它创造了 4 个工作,这些工作将在每周四的 9 和 11 小时 30 和 45 分钟运行。

有没有办法创建作业间隔,在每个星期六的 9:10 和 11:45 运行作业?

【问题讨论】:

    标签: oracle plsql scheduled-tasks dbms-scheduler


    【解决方案1】:

    创建两个计划。

    BEGIN
      dbms_scheduler.create_schedule (
        schedule_name   => 'SCHEDULE_9', 
        repeat_interval => 'FREQ=WEEKLY; BYDAY=SAT; BYHOUR=9;  BYMINUTE=10; BYSECOND=00;');
      dbms_scheduler.create_schedule (
        schedule_name   => 'SCHEDULE_11', 
        repeat_interval => 'FREQ=WEEKLY; BYDAY=SAT; BYHOUR=11; BYMINUTE=45; BYSECOND=00;'); 
      dbms_scheduler.create_job (
        job_name        => 'MY_JOB',
        job_type        => 'STORED_PROCEDURE',
        job_action      => 'MY_PROCEDURE',
        start_date      => systimestamp,
        repeat_interval => 'SCHEDULE_9,SCHEDULE_11',
        end_date        => NULL,
        enabled         => TRUE,
        comments        => 'Job that runs at 09:10 and 11:45 every Saturday ');
    END;
    /
    

    【讨论】:

    • 是的,正确的,我想也许除了创建 2 个差异之外还有其他选择。时间表,,,但看起来这是唯一的选择......谢谢
    猜你喜欢
    • 2019-06-14
    • 2020-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-10
    • 1970-01-01
    • 1970-01-01
    • 2016-04-02
    相关资源
    最近更新 更多