达梦数据库数据迁移问题记录:表输出.0 - 记录超长
使用kettle工具将数据从Mysql迁移至达梦数据库时,输出错误:记录超长2021/09/28 17:26:58 - 表输出.0 - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : Because of an error, this step can't continue:2021/09/28
使用kettle工具将数据从Mysql迁移至达梦数据库时,输出错误:记录超长
2021/09/28 17:26:58 - 表输出.0 - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : Because of an error, this step can't continue:
2021/09/28 17:26:58 - 表输出.0 - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : org.pentaho.di.core.exception.KettleException:
2021/09/28 17:26:58 - 表输出.0 - Error batch inserting rows into table [oa_mail].
2021/09/28 17:26:58 - 表输出.0 - Errors encountered (first 10):
2021/09/28 17:26:58 - 表输出.0 -
2021/09/28 17:26:58 - 表输出.0 -
2021/09/28 17:26:58 - 表输出.0 - Error updating batch
2021/09/28 17:26:58 - 表输出.0 - 记录超长
2021/09/28 17:26:58 - 表输出.0 -
2021/09/28 17:26:58 - 表输出.0 -
2021/09/28 17:26:58 - 表输出.0 - at org.pentaho.di.trans.steps.tableoutput.TableOutput.writeToTable(TableOutput.java:349)
2021/09/28 17:26:58 - 表输出.0 - at org.pentaho.di.trans.steps.tableoutput.TableOutput.processRow(TableOutput.java:125)
2021/09/28 17:26:58 - 表输出.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62)
2021/09/28 17:26:58 - 表输出.0 - at java.lang.Thread.run(Thread.java:745)
2021/09/28 17:26:58 - 表输出.0 - Caused by: org.pentaho.di.core.exception.KettleDatabaseBatchException:
2021/09/28 17:26:58 - 表输出.0 - Error updating batch
2021/09/28 17:26:58 - 表输出.0 - 记录超长
2021/09/28 17:26:58 - 表输出.0 -
2021/09/28 17:26:58 - 表输出.0 - at org.pentaho.di.core.database.Database.createKettleDatabaseBatchException(Database.java:1427)
2021/09/28 17:26:58 - 表输出.0 - at org.pentaho.di.trans.steps.tableoutput.TableOutput.writeToTable(TableOutput.java:296)
2021/09/28 17:26:58 - 表输出.0 - ... 3 more
2021/09/28 17:26:58 - 表输出.0 - Caused by: java.sql.BatchUpdateException: 记录超长
2021/09/28 17:26:58 - 表输出.0 - at dm.jdbc.driver.DBError.throwBatchUpdateException(DBError.java:687)
2021/09/28 17:26:58 - 表输出.0 - at dm.jdbc.a.a.a(DBAccess.java:565)
2021/09/28 17:26:58 - 表输出.0 - at dm.jdbc.driver.DmdbPreparedStatement.do_executeLargeBatch(DmdbPreparedStatement.java:504)
2021/09/28 17:26:58 - 表输出.0 - at dm.jdbc.driver.DmdbPreparedStatement.do_executeBatch(DmdbPreparedStatement.java
从网上查找相关回答后,基本都是通过设置字段长度。达梦数据库可存储大文本的数据类型有text、blob、clob、image,且最大长度都是1-2G,相当于oracle long字段的长度,blob和image类型的字段内容必须存储十六进制数字串内容。我在将疑似值超长的字段设置为text后,依旧不行。后通过在DM管理工具中设置该表的存储选项--》启用超长记录,即可解决该错误。
更多推荐
所有评论(0)