在 Oracle SQL 中插入 DATE 值的格式是什么?
What is the format, for inserting DATE values in Oracle SQL?
在 Oracle SQL 中,我看到默认的日期格式是 'YYYY-MON-DD'
但是,当我 运行 这个查询时:
SELECT TO_CHAR
(SYSDATE) "NOW"
FROM DUAL;
它returns :
23-APR-15
虽然我期待像“2015-APR-23”这样的东西..
这是为什么?谢谢
看到这个问题- Oracle's default date format is YYYY-MM-DD, WHY?
默认日期格式是会话 nls_date_format
指定的任何格式。但是,您永远不应该编写依赖于会话 nls_date_format
的代码,因为这取决于用户的偏好、他们的国家和地区等。您应该使用显式转换 and/or 日期文字( date 'yyyy-mm-dd') 在你的代码中,而不是依赖于隐式转换。如果您关心返回字符串的格式,则需要在 to_char
调用中提供明确的格式掩码。
您的会话 nls_date_format
似乎是 DD-MON-RR
,这是英语安装的常见默认值。别人的默认值可能是YYYY-MON-DD
。其他人可能还有另一个默认值。
在 Oracle SQL 中,我看到默认的日期格式是 'YYYY-MON-DD'
但是,当我 运行 这个查询时:
SELECT TO_CHAR
(SYSDATE) "NOW"
FROM DUAL;
它returns :
23-APR-15
虽然我期待像“2015-APR-23”这样的东西..
这是为什么?谢谢
看到这个问题- Oracle's default date format is YYYY-MM-DD, WHY?
默认日期格式是会话 nls_date_format
指定的任何格式。但是,您永远不应该编写依赖于会话 nls_date_format
的代码,因为这取决于用户的偏好、他们的国家和地区等。您应该使用显式转换 and/or 日期文字( date 'yyyy-mm-dd') 在你的代码中,而不是依赖于隐式转换。如果您关心返回字符串的格式,则需要在 to_char
调用中提供明确的格式掩码。
您的会话 nls_date_format
似乎是 DD-MON-RR
,这是英语安装的常见默认值。别人的默认值可能是YYYY-MON-DD
。其他人可能还有另一个默认值。