Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date SQL Developer只返回日期,不返回时间。我该如何解决这个问题?_Date_Datetime_Time_Oracle Sqldeveloper - Fatal编程技术网

Date SQL Developer只返回日期,不返回时间。我该如何解决这个问题?

Date SQL Developer只返回日期,不返回时间。我该如何解决这个问题?,date,datetime,time,oracle-sqldeveloper,Date,Datetime,Time,Oracle Sqldeveloper,以下是SQL DevelopePR在结果窗口和导出时给我的信息: 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 Devel

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

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,并将日期格式设置为MM/DD/YYYY HH24:MI:SS

这将获得小时、分钟和秒。嘿,普雷斯托

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; 

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


DD-MON-RR HH:MI:SS

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

alter SESSION set NLS_DATE_FORMAT='DATE_FORMAT'


e、 g.:alter SESSION set NLS_DATE_FORMAT='DD-MM-yyyyy HH24:MI:SS'

要扩展前面的一些答案,我发现Oracle日期对象的行为不同于Oracle时间戳对象。特别是,如果将NLS_DATE_格式设置为包含小数秒,则会忽略整个时间部分

  • 格式“YYYY-MM-DD HH24:MI:SS”对于日期和时间戳的效果与预期一致
  • 格式“YYYY-MM-DD HH24:MI:SSXFF”仅显示日期的日期部分,与时间戳的预期效果相同

我个人的偏好是将日期设置为“YYYY-MM-DD HH24:MI:SS”,并将时间戳设置为“YYYY-MM-DD HH24:MI:SSXFF”。

这两个答案都不适用于我,首选项NLS配置选项或ALTER语句都不适用。这是对我来说唯一有效的方法:

dbms_session.set_nls('nls_date_format','''DD-MM-YYYY HH24:MI:SS''');
*在BEGIN语句之后添加

我使用的是PL/SQL开发人员v9.03.1641


希望这对某人有帮助

我是这样发现的:

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


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

在德语版本中:Extra>Voreinstellungen>Datenbank>NLSWOW。。。这真漂亮。不敢相信我在
select
语句中进行了转换。'Not Logical Setting':-)不!它代表国家语言支持。它用于定义国家日期、数字、货币和语言设置。注意:我需要重新连接到数据库才能使此设置生效。谢谢,这确实帮助了我-我只是从时间戳复制了格式,无法理解它为什么不起作用。是否有原因(标准除外)要使用
YYYY-MM-DD HH24:MI:SS
DD-MM-YYYY HH24:MI:SS
,我总是将年份放在第一位,以避免混淆。在美国,典型的序列是MM-DD-YYYY。其他地方是DD-MM-YYYY。问题是,在1到12之间的几天内,你无法区分它们。所以我总是把年放在第一位。我从来没有遇到过以年为先,以月为后,以日为后的事情。它还可以像字符串一样干净地排序,这是一个方便的副作用。