197

以下是 SQL Develoepr 在结果窗口和导出时给我的信息:

CREATION_TIME       
------------------- 
27-SEP-12
27-SEP-12
27-SEP-12

这是运行相同查询/数据库的另一款软件给出的内容:

CREATION_TIME       
------------------- 
2012-09-27 14:44:46 
2012-09-27 14:44:27 
2012-09-27 14:43:53 

如何让 SQL Developer 也返回时间?

4

8 回答 8

417

你能试试这个吗?

转到工具> 首选项 > 数据库 > NLS 并将日期格式设置为 MM/DD/YYYY HH24:MI:SS

于 2012-09-27T19:13:09.970 回答
43

也可以使用以下查询设置日期格式:-

更改会话设置 NLS_DATE_FORMAT = 'date_format'

例如:更改会话设置 NLS_DATE_FORMAT = 'DD-MM-YYYY HH24:MI:SS'

于 2015-05-16T12:32:42.953 回答
24

为了扩展之前的一些答案,我发现 Oracle DATE 对象的行为与 Oracle TIMESTAMP 对象不同。特别是,如果您将 NLS_DATE_FORMAT 设置为包括小数秒,则将省略整个时间部分。

  • 对于 DATE 和 TIMESTAMP,格式“YYYY-MM-DD HH24:MI:SS”按预期工作
  • 格式“YYYY-MM-DD HH24:MI:SSXFF”仅显示 DATE 的日期部分,按预期工作 TIMESTAMP

我个人的偏好是将 DATE 设置为“YYYY-MM-DD HH24:MI:SS”,并将 TIMESTAMP 设置为“YYYY-MM-DD HH24:MI:SSXFF”。

于 2016-01-21T21:09:07.590 回答
16

从工具 > 首选项 > 数据库 > NLS 参数并将日期格式设置为

DD-MON-RR HH:MI:SS

于 2013-09-30T12:50:31.267 回答
5

这将为您提供小时、分钟和秒。嘿presto。

select
  to_char(CREATION_TIME,'RRRR') year, 
  to_char(CREATION_TIME,'MM') MONTH, 
  to_char(CREATION_TIME,'DD') DAY, 
  to_char(CREATION_TIME,'HH:MM:SS') TIME,
  sum(bytes) Bytes 
from 
  v$datafile 
group by 
  to_char(CREATION_TIME,'RRRR'), 
  to_char(CREATION_TIME,'MM'), 
  to_char(CREATION_TIME,'DD'), 
  to_char(CREATION_TIME,'HH:MM:SS') 
 ORDER BY 1, 2; 
于 2012-09-27T19:26:54.737 回答
3

这些答案都不适合我,不是 Preferences NLS 配置选项或 ALTER 语句。这是在我的案例中唯一有效的方法:

dbms_session.set_nls('nls_date_format','''DD-MM-YYYY HH24:MI:SS''');

*在 BEGIN 语句之后添加

我正在使用 PL/SQL Developer v9.03.1641

希望这对某人有帮助!

于 2017-06-21T18:57:50.913 回答
1

工具>首选项>数据库> NLS在我的情况下,“日期格式”行中的秒后有“XFF”。将参数更正为“yyyy-mm-dd HH24:MI:SS”后,时间出现了。

于 2021-03-15T08:13:03.103 回答
0

好吧,我发现了这种方式:

Oracle SQL Developer(左上角图标)> 首选项 > 数据库 > NLS 并将日期格式设置为 MM/DD/YYYY HH24:MI:SS

在此处输入图像描述

于 2019-04-18T10:10:43.710 回答