【问题标题】:How to display timestamps in table如何在表格中显示时间戳
【发布时间】:2021-12-20 23:34:03
【问题描述】:

我需要帮助。是否有允许在表格中显示时间戳的设置? 数据库是我工作的一部分,但是我的一位高级分析师查询了相同的代码,他设法在日期旁边显示了时间戳,我的没有。他告诉我有一个设置,并让我自己搜索。

我正在使用 Oracle SQL Developer Build MAIN-20.64 版本 4.1.2.20

这是桌子

【问题讨论】:

  • 我不知道你所说的“设置”是什么意思。如果您想从表中获取数据,请在查询中指定您想要的内容。
  • @TangentiallyPerpendicular - 问题不在于获取数据,而在于显示它。 “设置”正是控制数据显示方式的内容。在这种情况下,它们是一些“NLS 设置”,和/或 GUI 具有的任何设置,在某些不幸的情况下,它们会完全忽略 NLS 设置。
  • 正确!感谢 mathguy 的帮助!

标签: oracle timestamp settings


【解决方案1】:

某些 GUI 有自己的时间戳格式等设置,它们会忽略您的 NLS 设置。 (我觉得这很烦人。Toad 会这样做。)

SQL Developer 很好:它有这样的设置(你可以找到它们并使用它们),但你也可以用标准的 SQL 语句来改变它们。你需要的是类似的东西

alter session set nls_timestamp_format = 'yyyy-mm-dd hh24:mi:ss.ff6';

(假设第二个需要六个小数位,并且格式模型就是您需要的那个)。使用您需要的任何格式;但只有傻瓜(包括,唉,甲骨文本身!)使用两位数的年份。

不过需要注意的是:created_dt 列的数据类型是什么?例如,如果是date,则需要更改nls_date_format(秒不带小数);如果是timestamp with time zone,则需要提供包含时区元素的格式,并且需要更改nls_timezone_tz_format

您还可以在 SQL Developer 中的

下找到这些设置(并直接在此处更改 - 有效格式相同)
>> Tools >> Preferences >> Database >> NLS

【讨论】:

    猜你喜欢
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    • 2016-06-15
    • 2012-01-06
    • 2016-02-20
    • 2011-08-14
    • 1970-01-01
    相关资源
    最近更新 更多