当在程序内提交作业时,错误显示错误消息(42/76 PLS-00166:日期、时间、时间戳或间隔文字的格式不正确)显示。作业配置显示如下。
DBMS_JOB.SUBMIT (
job_number => v_job_ID + 1,
what => 'BEGIN'|| v_query ||'END',
next_date => TRUNC(NEXT_DAY(SYSDATE, 'SUN')) + 2.5/24, -- 2:30 AM,
interval => 'NEXT_DAY(TRUNC(SYSDATE), ''SUN'') + 2.5/24',
comments => 'Job to run every sunday at 2:30 AM',
no_parse => TRUE
);
1条答案
按热度按时间qoefvg9y1#
你犯了很多错误,但我看不出是什么原因造成的。
v_job_ID + 1
放进submit
* 在别处 * 计算它(见第5行),但是-这是徒劳的,因为DBMS_JOB
返回作业ID
;这并不是说您可以自己设置它(参见第15行后结果)what
需要在开始和命令本身之间有一个空格,否则会出现语法错误comments
不能在submit
中使用(检查语法)dbms_job
只是为了向后兼容。考虑切换到dbms_scheduler