这似乎是一个愚蠢的问题,但无论如何我都会在这里碰碰运气。请参考下面的代码块,您会看到NEXT_DAY在SELECT语句中同时接受 1 和 'Sunday' 作为参数,但在DBMS_OUTPUT.PUT_LINE中仅接受 'Sunday',并为 1 - “ORA-01846: not a valid day of the星期”。
如果我输入“星期日”,它会起作用。我在这里缺少什么吗?
declare
wday varchar(10);
begin
select to_char(next_day(sysdate,1),'Day') into wday from dual; -- <== working with 1
dbms_output.put_line (wday);
select to_char(next_day(sysdate,'Sunday'),'Day') into wday from dual; -- <== working with 'Sunday'
dbms_output.put_line (wday);
--dbms_output.put_line (to_char(next_day(sysdate,1),'Day')); -- <== not working with 1
dbms_output.put_line (to_char(next_day(sysdate,'Sunday'),'Day')); -- <== working with 'Sunday'
end;
/
PS:我的 NLS 配置:1 = 星期日