MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

信创改造-mysql迁移数据到人大金仓问题纪要

2025-02-14 23:28 huorong 精选文章 2 ℃ 0 评论

方法一:使用人大金仓自带的【KingbaseDTS 数据库迁移工具】需要解决不兼容的错误

1、报错:
java.sql.BatchUpdateException: Batch entry 0 insert into "disability_assistance"."area_address" ( "id","level","parent_code","area_code","zip_code","city_code","name","short_name","detail_name","pinyin","longitude","latitude","irs_code" ) values ( 4076,4,'330182003','330182003232',310000,'0571','桥岭村委会','','浙江省/杭州市/建德市/更楼街道/桥岭村委会','','0.000000','0.000000',NULL ) was aborted: 错误: 数字字段溢出。Detail: 精度为10,范围是0的字段必须四舍五入到小于10^10的绝对值. Call getNextException to see other _errors in the batch.

原因:原表中的parent_code为bigint类型,迁移到人大金仓后变为了NUMERIC(10, 0)类型,导致原表中有超过10为的数据无法导入成功;

解决方案:修改NUMERIC(10, 0)中的10为实际该字段最大长度后,问题解决。


2、
com.kingbase8.util.KSQLException: 错误: "c" 不是一个有效的二进制数

3、
com.kingbase8.util.KSQLException: 错误: 无效的类型 timestamp with time zone 输入语法: "2024-01-09T04:49:43Z[UTC]"



方法二:用Navicat工具

1、把人大金仓按“postgresql”连接成功



2、使用Navicat工具中的“数据传输”工具

  • 选择源数据库和目的数据库



  • 选择表


  • 修改配置,去掉包含索引



  • 开始运行



  • 等待运行结果


这种方法成功率会更高!推荐用此方法。

Tags:mysql 绝对值

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言