2012-02-07 81 views
1

我有一個java.sql.Clob對象,我從Oracle查詢中填充,然後必須在DB2表(也是Clob列)中插入此字段。所以,在我的sqlj類中,我創建了一個java.sql.Clob類型,並使用Oracle select(也是java.sql.Clob)的結果設置值。 Clob中的我試圖插入的長度大約有2,5Mb或dbms_lob.getlength返回2500012.CLOB值太大,無法插入DB2表

當SQLJ執行時,它拋出一個異常:

COM.ibm.db2.jdbc。 DB2Exception:[IBM] [CLI Driver] [DB2] SQL0433N值「」太長。 SQLSTATE = 22001

我使用的DB2版本是 數據庫服務器= DB2 OS/390 8.1.0

的Oracle版本是 Oracle數據庫10g企業版發佈10.2.0.5.0 - 64位

你知道爲什麼會拋出這個錯誤嗎?我一直在尋找的IBM文檔,它是假設使用的java.sql.Clob對象插入到DB2 CLOB列...

「爲CLOB列輸入參數對於IN參數CLOB列, 或INOUT用於輸入CLOB列的參數,您可以使用以下技術之一: 變量,與CLOB列完全匹配: cstmt.setClob(parmIndex,clobData) ; ...「

回答