如何在Oracle SQL Developer中设置自定义日期时间格式?


198

默认情况下,Oracle SQL Developer将日期值显示为15-NOV-11。我想默认看到时间部分(小时/分钟/秒)。

有没有一种方法可以在Oracle SQL Developer中进行配置?


我以前很难解决这个问题。我可以为一个会话更正它,但是一旦我关闭SQL Developer,然后再次重新启动它,就会丢失设置。因此,我可以提供的解决方案不是永久性的。
Brett Walker

您可以添加答案吗?@BrettWalker,总比没有好。
ComfortableNumb

5
实际上将精度存储到秒的称为“ DATE”的数据类型的荒谬默认值。这肯定浪费了很多人的时间。
WW。

Answers:


398

您可以在首选项中更改此设置:

  1. 从Oracle SQL Developer的菜单转到:工具 > 首选项
  2. 在“ 首选项”对话框中,选择“ 数据库” >“ NLS”从左侧面板中 ”。
  3. 从NLS参数列表中,输入DD-MON-RR HH24:MI:SS日期格式”字段。
  4. 保存并关闭对话框,完成!

这是屏幕截图:

在Oracle SQL Developer中更改日期格式首选项


1
我在Linux上使用SQLDeveloper,但此设置对我不起作用。
Filipe

3
无论我使用哪种格式,它都将被忽略。我看到这是在sql中生成的:to_date('02 -OCT-14','YYYY-MM-DD'),所以现在我的sql很普通。
詹姆斯·沃特金斯

这种格式对我不起作用,可能是因为平台的区域设置不同而已...如果这种方法不起作用,请参阅我的答案
Donatello 2014年

2
此设置存储在哪里?在DB或SQL Developer中?
工具包

44

在尝试更改sql-developer中日期的显示格式时,我偶然发现了该帖子。只是想补充一下我发现的内容:

  • 要更改默认显示格式,我将使用ousoo提供的步骤,即“工具”>“首选项”>“ ...”。
  • 但是很多时候,我只想保留DEFAULT_FORMAT,而仅在一系列相关查询中修改格式。那时候我将使用以下命令更改会话的格式:

    alter SESSION set NLS_DATE_FORMAT = 'my_required_date_format'

例如:

   alter SESSION set NLS_DATE_FORMAT = 'DD-MM-YYYY HH24:MI:SS' 

26

使用Oracle SQL Developer 3.2.20.09,我设法通过以下方式为DATE类型设置了自定义格式:

在:工具>首选项>数据库> NLS中

或:水渠>草原>多瑙河基地> NLS

YYYY-MM-DD HH24:MI:SS

设置菜单屏幕截图

请注意,以下格式对我不起作用

DD-MON-RR HH24:MI:SS

结果,它保持默认格式,没有任何错误。


3

对于仍然对此有疑问的任何人;我碰巧从Google找到此页面...

像这样放置它(NLS参数)...在SQLDeveloper v3.0.04中它对我很重要:

DD-MON-YY HH12:MI:SS AM or for 24-Hour, DD-MON-YY HH24:MI:SS 

请务必注意,对于24小时格式,已删除了“ AM”格式令牌。如果同时使用了“ AM”和“ HH24”令牌,则“ AM”将覆盖“ HH24”。
macawm '16

2

在我的情况下,在“首选项/数据库/ NLS”中设置的格式为[日期格式] = RRRR-MM-DD HH24:MI:SSXFF,但在网格中看到8个可能的默认格式RRRR / MM / DD(即使没有时间)将[日期格式]设置更改为:RRRR-MM-DD HH24:MI:SS(最后没有'XFF')后,更改。

没有错误,但是最后用xff格式化不起作用。

注意:波兰语中的“ RRRR”表示YYYY


2
TL; DR:无'XFF'末
罗伯特·安杰尤克

在Oracle中,日期不包含小数秒部分。有时间戳记。因此,Oracle试图通过不让您指定无效的内容来提供帮助。
Roy Latham

0

当我复制时间戳的日期格式并将其用于日期时,它不起作用。但是,将日期格式更改为此(DD-MON-YY HH12:MI:SS AM)对我有用。

必须在“工具”->“首选项”->“搜索NLS”中进行更改


0

转到工具>首选项。在树中,选择数据库> NLS。有三种日期/时间格式可用:日期,时间戳和时间戳TZ。编辑日期格式可获得所需的效果。

就像我上面说的;这种方法并没有给我带来永久的改变。


杰西克(Jsyk),您的个人资料照片使我想起了唐·科里昂(错误的评论地点)
乔纳森·多斯·桑托斯

0

SQL Developer版本4.1.0.19

第1步:转到工具->首选项

第2步:选择数据库-> NLS

步骤3:转到“日期格式”,然后输入DD-MON-RR HH24:MI:SS

步骤4:点击OK(确定)。


-1

我有一个相关的问题已解决,并想让人们知道我的解决方案。使用SQL Developer,我从一个数据库导出到csv,然后尝试将其导入另一个数据库。我的日期字段中不断出现错误。我的日期字段为时间戳格式:

28-JAN-11 03.25.11.000000000 PM

导入时,上述解决方案(更改NLS首选项)对我不起作用,但最终使我可以进行以下操作:

在“导入向导列定义”屏幕中,DD-MON-RR HH.MI.SSXFF AM在“格式”框中输入“ ”,最后它成功导入。不幸的是,我有数十个日期字段,据我所知,没有办法将这种格式系统地应用于所有日期字段,因此我不得不手动进行操作。如果有人知道更好的方法,我将很高兴听到它!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.