DB2 中的错误代码=-4461,SQLSTATE=42815

2022-09-04 04:46:47

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

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 中相应列的数据类型,它们是相同的。它是 BIGINT 用于源和目标中的标识(自动增量)col 和 LONG VARCHAR。

请帮助解决此问题。


答案 1

我有一次遇到类似的问题。我解决了将队列大小添加到XML的问题。在我的情况下是这样的:

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

使用队列大小,查询是批量启动的。


答案 2

推荐