如何解决如何更改Oracle作业以每12小时运行一次
我需要在下面的作业每12小时运行一次(例如:作业需要每天在12:30 am和12:30 pm运行)
代码:
BEGIN
SYS.DBMS_JOB.CHANGE
(
job => 123,what => 'SP_ABC;',next_date => TO_DATE('08/09/2020 00:30:00','dd/mm/yyyy hh24:mi:ss'),INTERVAL => 'TRUNC(sysdate+1)+30/1440'
);
END;
/
COMMIT;
解决方法
那将是这样的:
select t.task_id,x.ar[0] area,x.ar[1] iiid
from mytable t
cross join unnest(cast(t.json_data as array(array(varchar)))) as x(ar)
或者,如果您切换到SQL> set serveroutput on
SQL> declare
2 l_job number;
3 begin
4 dbms_job.submit
5 (job => l_job,6 what => 'p_test;',7 next_date => trunc(sysdate + 1) + 0/24 + 30/(24*60),8 interval => 'trunc(sysdate + 1) + 12/24 + 30/(24*60)'
9 );
10 commit;
11 dbms_output.put_line('job number = ' || l_job);
12 end;
13 /
job number = 151
PL/SQL procedure successfully completed.
SQL> select job,last_date,next_date from user_jobs;
JOB LAST_DATE NEXT_DATE
---------- ------------------- -------------------
151 08.09.2020 00:30:00
SQL>
:
DBMS_SCHEDULER
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。