ChatGPT解决这个技术问题 Extra ChatGPT

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

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

有没有办法在 Oracle SQL Developer 中配置它?

我以前在这方面遇到过麻烦。我可以在会话中更正它,但是一旦我关闭 SQL Developer 然后重新启动它,我就会丢失设置。所以我能提供的这个解决方案不是永久的。
你可以添加一个答案吗? @BrettWalker,总比没有好。
对于实际上将精度存储到秒的数据类型“DATE”来说,这是多么荒谬的默认值。这肯定浪费了很多人的时间。

R
Rubens Mariuzzo

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

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

这是一个屏幕截图:

https://i.stack.imgur.com/b1Qsa.png


我在linux上使用SQLDeveloper,这个设置对我不起作用..还有其他方式吗?
无论我放什么格式,它都被忽略了。我看到在 sql 中生成了这个: to_date('02-OCT-14','YYYY-MM-DD') 所以现在我的 sql 完全被破坏了。
这种格式对我不起作用,可能是因为平台语言环境的差异......如果这个格式不起作用,请参阅我的答案
此设置存储在哪里?在 DB 或 SQL Developer 中?
h
hipsandy

我在尝试更改 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' 

D
Donatello

使用 Oracle SQL Developer 3.2.20.09,我设法以这种方式为类型 DATE 设置自定义格式:

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

或者:Outils > Préférences > Base de donées > NLS

YYYY-MM-DD HH24:MI:SS

https://i.stack.imgur.com/qy5Um.jpg

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

DD-MON-RR HH24:MI:SS

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


K
Kapuśniak

在我的情况下,在 Preferences/Database/NLS 中设置的格式是 [Date Format] = RRRR-MM-DD HH24:MI:SSXFF 但在网格中有 8 可能是默认格式 RRRR/MM/DD(即使没有时间)格式有将设置 [日期格式] 更改为:RRRR-MM-DD HH24:MI:SS(末尾没有“XFF”)后更改。

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

注:在波兰语中,RRRR 表示 YYYY


TL;DR:最后没有“XFF”
在 Oracle 中,日期没有小数秒部分。时间戳可以。因此,Oracle 试图通过不让您指定不起作用的东西来提供帮助。
B
Brett Walker

对于任何对此仍有疑问的人;我碰巧在谷歌上找到了这个页面......

像这样(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”。
A
Ashutosh Chopde

SQL 开发者版本 4.1.0.19

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

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

第 3 步:转到日期格式并输入 DD-MON-RR HH24: MI: SS

第四步:点击确定。


S
Sharan Rajendran

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

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


B
Brett Walker

转到工具 > 首选项。在树中,选择数据库 > NLS。提供三种日期/时间格式:日期、时间戳和时间戳 TZ。编辑日期格式会产生所需的效果。

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


jsyk,你的个人资料图片让我想起了 om don corleone(这种评论的位置错误)
a
alexR1

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

28-JAN-11 03.25.11.000000000 PM

导入时,上述解决方案(更改 NLS 首选项)对我不起作用,但我终于得到了以下工作:

在 Import Wizard Column Definition 屏幕中,我在 Format 框中输入了“DD-MON-RR HH.MI.SSXFF AM”,最终导入成功。不幸的是,我有几十个日期字段,据我所知,没有办法系统地将这种格式应用于所有日期字段,所以我不得不手动进行....叹息。如果有人知道更好的方法,我会很高兴听到它!