我已经从模式A(表x)中导出了一些数据到XML,并且正在读取XML并将数据插入到模式B(表y)中。在20000条记录后插入数据时说

com.ibm.db2.jcc.am.SqlSyntaxErrorException: [jcc][t4][20111][11366][3.63.75] The value of a host variable is too large for its corresponding use.  Host variable=1. ERRORCODE=-4461, SQLSTATE=42815
com.ibm.db2.jcc.am.BatchUpdateException: [jcc][t4][102][10040][3.63.75] Batch failure.

提交了该批次,但是该批次的单个成员发生了至少一个异常。

我比较了表x和表y中对应列的数据类型,它们是相同的。源和目标中的标识(自动递增)col和LONG VARCHAR均为BIGINT。

请帮助解决此问题。

最佳答案

我曾经有过类似的问题。我解决了这个问题,将队列大小添加到了XML中。就我而言是这样的:

<task>
   <name>Ventas MCC</name>
   <queueSize>100</queueSize>
   <queueNames>trashQueue</queueNames>
   <queryTasks>
     <queryTask>...</queryTask>
   </queryTasks>
</task>

使用queueSize可以批量启动查询。

09-25 18:01