gpt4 book ai didi

MySQL数据字段转oracle

转载 作者:行者123 更新时间:2023-11-29 23:28:26 24 4
gpt4 key购买 nike

我正在使用 sqlldr 在 Oracle 数据库中加载 mysql 数据...我的问题是我在 MySQL 中有一个 Oracle 不喜欢的 DATE 列...

这是我在 mysql 中的列的结构:

Extra   Type    Field   Default Null    Key
date dateToSend 0000-00-00 NO

这是我的 ctl 文件中的条目:

DATETOSEND "CASE :DATETOSEND WHEN '0000-00-00 00:00:00' THEN TO_DATE('1900-01-01', 'YYYY-MM-DD') ELSE TO_DATE(:DATETOSEND, 'YYYY-MM-DD HH24:MI:SS') END"

我用于“DATETOSEND”的 Oracle 列是 DATE

来自 mysql 的日期字段示例为:“2014-08-14

最后,我从 sqlldr 得到的错误是:

ORA-01861: 文字与格式字符串不匹配

我知道这可能与我格式化“TO_DATE”的方式有关,但我不确定我错过了什么......

更新:这使它正常工作:

DATETOSEND "to_date(SUBSTR(:DATETOSEND,1,10),'YYYY-MM-DD')" 

最佳答案

我怀疑问题是:

 CASE :DATETOSEND WHEN '0000-00-00 00:00:00'

该常量在 Oracle 中是无效日期。也许这会起作用:

 CASE TO_CHAR(:DATETOSEND, 'YYYY-MM-DD HH24:MI:SS') WHEN '0000-00-00 00:00:00'

关于MySQL数据字段转oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26768204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com