开发者社区> 问答> 正文

mysql 同步 oracle varchar -> nvarchar2 会报错

mysql 同步oracle varchar -> nvarchar2 会报错 oracle 把nvarchar2 改成varchar2后成功!

现在oracle 数据库有大量数据,不能把nvarchar2改成varchar2 请问大神 如何解决。

Caused by: java.sql.SQLException: Invalid column type mysql 没有 nvarchar2 对应的类型是 Types.OTHER 把 column.getColumnValue() 转成了byte[] 走StatementCreatorUtils.setValue 方法 ps.setObject(paramIndex, inValue, Types.OTHER) 去处理出错了吧? 我现在加上判断 如果字段类型是types.other,目标端是oracle的,参数值是string类型的,setString。目前跑 是正常的。

原提问者GitHub用户 xieyuan1988

展开
收起
大圣东游 2023-06-21 17:24:23 89 0
1 条回答
写回答
取消 提交回答
  • 你有开启类型转换功能,这样可以根据列名找到oracle对应的类型?不过可能nvarchar2在jdbc没有定义,会返回other

    原回答者GitHub用户agapple

    2023-06-21 18:25:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
PostgresChina2018_樊文凯_ORACLE数据库和应用异构迁移最佳实践 立即下载
PostgresChina2018_王帅_从Oracle到PostgreSQL的数据迁移 立即下载
Oracle云上最佳实践 立即下载

相关镜像