创建定时任务的oracle代码 每天9:20定时执行两个存储过程sp1和sp2
时间: 2023-04-04 08:00:44 浏览: 124
可以使用Oracle的DBMS_SCHEDULER来创建定时任务,以下是示例代码:
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'daily_job',
job_type => 'PLSQL_BLOCK',
job_action => 'BEGIN sp1; sp2; END;',
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY; BYHOUR=9; BYMINUTE=20;',
enabled => TRUE);
END;
这段代码会创建一个名为"daily_job"的定时任务,每天9:20执行两个存储过程sp1和sp2。
相关问题
创建定时任务的oracle代码 每天9:20定时执行存储过程
可以使用Oracle的DBMS_SCHEDULER来创建定时任务,具体代码如下:
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'my_job',
job_type => 'STORED_PROCEDURE',
job_action => 'my_procedure',
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY;BYHOUR=9;BYMINUTE=20',
enabled => TRUE);
END;
其中,'my_job'是任务名称,'my_procedure'是要执行的存储过程名称,'repeat_interval'指定了任务的重复执行规则,这里是每天9:20执行一次。
如何在oracle中创建跑存储过程的定时任务
在Oracle中可以通过DBMS_SCHEDULER包创建定时任务来运行存储过程。以下是创建定时任务的步骤:
1. 创建作业(Job):使用DBMS_SCHEDULER.CREATE_JOB过程创建作业,指定作业类型为PLSQL_BLOCK,同时指定要运行的存储过程。
2. 创建程序(Program):使用DBMS_SCHEDULER.CREATE_PROGRAM过程创建程序,指定程序类型为STORED_PROCEDURE,同时指定要运行的存储过程。
3. 创建时间表(Schedule):使用DBMS_SCHEDULER.CREATE_SCHEDULE过程创建时间表,指定要运行作业的时间和频率。
4. 创建定时任务(Job Scheduler):使用DBMS_SCHEDULER.CREATE_JOB过程创建定时任务,指定要运行的作业、程序和时间表。
5. 启用定时任务:使用DBMS_SCHEDULER.ENABLE过程启用定时任务。
综上所述,可以通过以下代码在Oracle中创建定时任务来运行存储过程:
```
-- 创建作业
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'my_job',
job_type => 'PLSQL_BLOCK',
job_action => 'BEGIN my_stored_procedure; END;',
enabled => FALSE);
END;
/
-- 创建程序
BEGIN
DBMS_SCHEDULER.CREATE_PROGRAM (
program_name => 'my_program',
program_type => 'STORED_PROCEDURE',
program_action => 'my_stored_procedure');
END;
/
-- 创建时间表
BEGIN
DBMS_SCHEDULER.CREATE_SCHEDULE (
schedule_name => 'my_schedule',
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY; INTERVAL=1');
END;
/
-- 创建定时任务
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'my_job_scheduler',
program_name => 'my_program',
schedule_name => 'my_schedule',
enabled => FALSE);
END;
/
-- 启用定时任务
BEGIN
DBMS_SCHEDULER.ENABLE('my_job_scheduler');
END;
/
```
请注意,以上代码仅供参考,具体实现可能因环境和需求而异。