SQL Developer只返回date,而不是时间。 我该如何解决?

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

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

以下是运行相同查询/ db的另一个软件:

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

如何让SQL Developer返回时间呢?

部分答案:

 select TO_CHAR(creation_time,'DD-Mon-YYYY HH24:MI:SS') from 

如果有人知道如何设置默认显示的完整信息,请回答下面。

你能试试吗?

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

date格式也可以使用下面的查询来设置: –

改变SESSION设置NLS_DATE_FORMAT ='date_format'

例如:改变SESSION设置NLS_DATE_FORMAT ='DD-MM-YYYY HH24:MI:SS'

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

  • 格式“YYYY-MM-DD HH24:MI:SS”按预期工作,适用于DATE和TIMESTAMP
  • 格式“YYYY-MM-DD HH24:MI:SSXFF”只显示DATE的date部分,按照TIMESTAMP的预期工作

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

从工具>首选项>数据库> NSL参数并设置date格式为

DD-MON-RR HH:MI:SS

这会让你的时间,分钟和秒。 嘿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; 

这两个答案都不适用于我,而不是首选项NLSconfiguration选项或ALTER语句。 这是在我的情况下唯一的方法:

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

*在BEGIN声明后添加

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

希望这是对某人的帮助!