2014-10-09 82 views
0

我在首选项,数据库,NLS(Oracle SQL Developer)中设置日期/时间格式。 所以这是持久的(重启后)。 但是当我加载一个表时,该列只显示日期。 我能做些什么来解决这个问题(出口数据行是没有时间....):无法保存Oracle SQL Developer nls_date_format

谢谢

+0

我怀疑NLS设置优先顺序。看到我的答案。 – 2014-10-09 14:41:24

+1

您是否有可能设置会话NLS_DATE_FORMAT的登录触发器?列的数据类型是什么 - 实际上是一个“DATE”,而不是一个字符串或“TIMESTAMP”? – 2014-10-09 15:25:20

+1

您还可以在建立连接后执行的登录脚本中显式设置它,并在首选项Database> Filename中为连接启动脚本定义。 而且,您是否在首选项中勾选了“跳过NLS设置”? – thatjeffsmith 2014-10-09 17:39:31

回答

1

您需要了解的NLS SETTINGS优先顺序。客户端工具的设置被locale-specific nls设置覆盖。请修改您的操作系统NLS_LANG' in environmental variable or use会话级别nls设置。

例如,使用to_char和正确的format model,并根据您的nls设置,您将看到正确的格式。

或者,您也可以ALTER SESSION使会话使用特定的nls格式。

你会喜欢阅读这个不错的职位由爱德·史蒂文斯,http://edstevensdba.wordpress.com/2011/04/07/nls_date_format/

+0

谢谢你帮助我。我用登录脚本解决了这个问题。 – user1562809 2014-10-15 07:20:34

+0

感谢您的反馈。如果你通过编辑你的问题来添加你的答案,这将是很好的解释你做什么来解决你的问题。 – 2014-10-15 08:19:44