ChatGPT解决这个技术问题 Extra ChatGPT

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

以下是 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 也返回时间?


M
Muhammad Bekette

你能试试这个吗?

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


德文版:Extra > Voreinstellungen > Datenbank > NLS
哇...这很漂亮。不敢相信我在 select 语句中进行了转换。
'非逻辑设置' :-)
不!它代表国家语言支持。它用于定义国家日期、数字、货币和语言设置。
注意:我需要重新连接到数据库才能使此设置生效
U
Upendra Gughane

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

更改会话设置 NLS_DATE_FORMAT = 'date_format'

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


t
trevorsky

为了扩展之前的一些答案,我发现 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”。


谢谢,这真的帮了我 - 我只是从时间戳复制格式,不明白为什么它不起作用。
是否有理由(除了标准)使用 YYYY-MM-DD HH24:MI:SSDD-MM-YYYY HH24:MI:SS
我总是把年份放在第一位以避免混淆。在美国,典型的顺序是 MM-DD-YYYY。其他地方是 DD-MM-YYYY。麻烦的是,你不能在 1 到 12 天之间区分它们。所以我总是把年份放在首位。而且我从来没有遇到过任何将年放在首位的情况,然后再将月和日放在一起。它还可以像字符串一样干净地排序,这是一个方便的副作用。
g
gitsitgo

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

DD-MON-RR HH:MI:SS


d
derek

这将为您提供小时、分钟和秒。嘿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; 

C
Canica

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

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

*在 BEGIN 语句之后添加

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

希望这对某人有帮助!


С
Сергей

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


A
Abhishek

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

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

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