将1个job定义在每周六执行,但是报ora-01846,
是因为定义job的时候,next_day参数日期是英文,
但是 select * from v$nls_parameters a where a.PARAMETER='NLS_DATE_LANGUAGE';
是SIMPLIFIED CHINESE,
修改参数alter session set nls_date_language='american';
然后重新执行Job
declare
jobnum number;
begin
dbms_job.submit(jobnum,
'REFRESH_DETAILADDRESS;',
sysdate,
'next_day(trunc(sysdate),''Saturday'')');
end;
本文介绍了解决Oracle Job定义时遇到ORA-01846错误的方法。该错误源于Job设置中使用的英文星期名称与数据库的语言设置不符。通过调整会话参数NLS_DATE_LANGUAGE为American,确保了Job能正确识别英文星期名称。
3691

被折叠的 条评论
为什么被折叠?



