【问题标题】:Importing TimeStamp columns from excel to SQL DEVELOPER将时间戳列从 excel 导入 SQL DEVELOPER
【发布时间】:2019-06-20 23:08:09
【问题描述】:

经常会出现很多与此类似的问题,但我发现的所有问题都没有回答我遇到的问题。

我正在尝试将带有时间戳的列从 Excel 导入 SQL DEVELOPER。在图 1 中,您可以看到 excel 中日期的格式。格式 RRRR-MM-DD GG:MM:SS 是波兰语等价于英语 YYYY-MM-DD HH:MM:SS。 图 2 显示了我在 SQL Developer 中的 NLS 设置,图 3 显示了我在尝试从 excel 传输数据时得到的结果。看起来 SQL 以某种方式以自己的方式读取日期的格式?或者也许excel在打开工作簿时以其他方式存储数据而不是显示?任何想法如何纠正这个问题?

Presentation of my data arrangements

【问题讨论】:

  • 格式不对,试试MM/DD/YYYY
  • 分钟不是 MM 而是 MI。关于您的问题:如果没有任何帮助,请将数据加载到 VARCHAR2 列中,该列将接受 anything。然后使用带有适当格式掩码的 TO_DATE 函数将其移动到 DATE 列。
  • 奇怪的是,将数据导入为 VARCHAR2 会得到相同的结果,即转换为 MM/DD/YYYY 的日期 - 小时、分钟和秒都消失了。还有其他想法吗?我开始认为,也许 excel 以某种奇怪的方式存储数据,这会与格式混淆,这可能吗?

标签: excel oracle-sqldeveloper


【解决方案1】:

当我找出问题所在并且我认为这可能对其他用户有用的信息时,我将提出解决方案。

帮助我的是,将 Excel 列中的时间戳格式化为文本。这意味着它既不能是格式化为时间戳的数字,也不能是 TEXT FUNCTION 的结果。它必须是纯文本。在附加的屏幕中,您可以查看我尝试执行的操作以及 SQL DEVELOPER 中的结果。

为了在 C 列中创建值,我复制并粘贴为 B 列的值 - 它将这些值粘贴为文本而不是数字。

Presentation of the solution

希望这对将来的某人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-26
    • 1970-01-01
    相关资源
    最近更新 更多