如何在 pl/sql 中安排作业?

Posted

技术标签:

【中文标题】如何在 pl/sql 中安排作业?【英文标题】:How to schedule a job in pl/sql? 【发布时间】:2013-03-13 12:10:36 【问题描述】:

我创建了一个名为的存储过程

traffic_details_temp_send_mail;

如何让这个程序每天上午 10 点运行?

请帮忙处理代码块。

提前致谢。

【问题讨论】:

【参考方案1】:

您可以创建调度程序作业:

begin
    dbms_scheduler.create_job(job_name        => 'TRAFFIC_DETAILS_JOB',
                              job_type        => 'STORED_PROCEDURE',
                              job_action      => 'traffic_details_temp_send_mail',
                              start_date      => systimestamp,
                              end_date        => null,
                              repeat_interval => 'freq=daily; byhour=10; byminute=0; bysecond=0;',
                              enabled         => true,
                              auto_drop       => false,
                              comments        => 'your description here.');
end;
/

然后您可以在调度程序作业视图(user_scheduler_jobs 等)中查看详细信息。请参阅here 了解有关 scehduler 工作的信息。

【讨论】:

达扎尔。 DBMS作业调度和DBA作业调度有什么区别 @Shreedhar dbms_job 是较旧的作业调度程序,没有那么好的日志记录和调度功能。如果我是你想要的任何新工作,我会使用调度程序(Oracle 的建议是你不要使用 dbms_jobaanymore ..但它仍然受支持) @Shreedhar 一个区别是 dbms_scheduler 在添加作业时执行提交,而 dbms_job 不执行。 ***.com/a/4153606/121544

以上是关于如何在 pl/sql 中安排作业?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SQL Developer 中安排作业

如何在 Big Query 中安排每日插入作业 [重复]

我如何在Gitlab中安排不同时间的作业

如何在 celery 中安排工作日感知工作

如何在 Django 中安排任务?

如何在使用 DBMS_SCHEDULER.CREATE_JOB 创建的作业中运行复杂的 PL/SQL 代码