设置默认日期格式模型

当 Oracle 隐式地将 DATE 转换为字符串或反之亦然(或者在没有格式模型时显式调用 TO_CHAR()TO_DATE() )时,NLS_DATE_FORMAT 会话参数将用作转换中的格式模型。如果文字与格式模型不匹配,则会引发异常。

你可以使用以下方法查看此参数

SELECT VALUE FROM NLS_SESSION_PARAMETERS WHERE PARAMETER = 'NLS_DATE_FORMAT';

你可以使用以下方法在当前会话中设置此值:

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';

(注意:这不会更改任何其他用户的值。)

如果你依靠 NLS_DATE_FORMAT 来提供 TO_DATE()TO_CHAR() 中的格式掩码,那么当你的查询中断时,如果此值发生变化,你不应该感到惊讶。