【问题标题】:Oracle Date column storing time, but not displaying itOracle Date 列存储时间,但不显示它
【发布时间】:2013-04-10 13:55:45
【问题描述】:

我有一个链接到 C# Visual Studio 应用程序的 oracle 数据库后端。

我有一个 INVOICE 表,其中存储了几个日期。

在 UI 中,我将 DateTimePicker 数据绑定到这些字段。用户选择 DATE 和 TIME。这些值存储到数据库中,以后可以检索,但我在 Oracle 界面中看不到时间。

C# 数据集可视化工具:

Oracle 数据视图

请注意,两个图像都在查看同一张表,首先来自 Visual Studio,然后来自 Oracle。 TIME 存储在会话之间的某处,因为它可以被检索并填充此列绑定到的用户界面控件:

问题是我想在 ORACLE 中运行 SQL 并将数据导出到 EXCEL,但是由于 TIME 在 ORACLE 表中不可见,因此我不能在 EXCEL 报告中使用它。

这是设置吗?还是一些奇怪的缓存问题或什么?

【问题讨论】:

  • 您在编写 SQL 查询吗?如果是这样,那么您可以使用 TO_CHAR 将日期/时间转换为您选择的多种格式。
  • @Randy 即便如此,我不应该能够在 oracle 的列中看到 TIME 吗?还是隐藏在幕后?我会试一试,因为我正在编写 SQL
  • 为实例设置了默认的日期格式 - 通常您不能将其用于应用程序,因此最佳做法是以您想要的格式选择它
  • @Randy 哇,太棒了,我只是像这样针对我的数据运行它 //select to_char(my_date,'dd/mm/yyyy, HH24:MI:SS') "CustomColName" from invoice;\\ 它运行良好。先生,您应该将其作为一个不可接受的答案。

标签: c# sql oracle datetime user-interface


【解决方案1】:

好的,这是一个免费的答案:)

请使用TO_CHAR 函数以您想要的格式返回日期。

【讨论】:

    猜你喜欢
    • 2022-06-17
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-30
    相关资源
    最近更新 更多