【发布时间】:2021-02-02 14:25:16
【问题描述】:
我将“2020-08-17 02:18:34+0000”作为 CSV 字符串,并希望将其插入到具有 DATE 类型的 oracle 表列中。我正在通过 JDBC 批处理代码加载表。我试过了
TO_DATE (TO_CHAR (TO_TIMESTAMP ('2020-08-17 02:18:34+0000', 'RRRR-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS')
但它没有工作。请帮忙。谢谢。
编辑
错误信息:
错误报告 -
SQL 错误:ORA-01830:日期格式图片在转换整个输入字符串之前结束
01830. 00000 - “日期格式图片在转换整个输入字符串之前结束”
*原因:
*行动:
【问题讨论】:
-
“没有工作”在任何错误消息中都找不到。帮助我们帮助您。不要让我们猜测错误信息是什么。
-
在java中你可以用
LocalDate.parse(接受DateTimeFormatter作为第二个输入的那个)解析它。然后toString方法将返回一个格式应该与sql日期兼容的日期(即YYYY-mm-dd) -
你有一个逻辑问题,在去“代码”之前。你所拥有的不是时间戳。它是一个带有时区的时间戳。如果您忽略时区,您将丢失信息。 所有您的输入是否会位于同一时区 +0000,即 UTC (GMT)?如果没有,您肯定会丢失信息。