2014-10-19 26 views
1

我想在使用JDBC查詢的informix數據庫中的表中插入blob表。然而我得到這個錯誤:java.sql.SQLException:智能大對象錯誤informix

java.sql.SQLException: Smart-large-object error. 
at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:413) 
at com.informix.jdbc.IfxSqli.a(IfxSqli.java:3494) 
at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3807) 
at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2610) 
at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2526) 
at com.informix.jdbc.IfxSqli.executeCommand(IfxSqli.java:940) 
at com.informix.jdbc.IfxResultSet.b(IfxResultSet.java:303) 
at com.informix.jdbc.IfxStatement.c(IfxStatement.java:1273) 
at com.informix.jdbc.IfxPreparedStatement.executeUpdate(IfxPreparedStatement.java:421) 
at etaxarchive.FillDataManager.insertIntoTable(FillDataManager.java:196) 
at etaxarchive.FillDataManager.fillTableData(FillDataManager.java:112) 
at etaxarchive.ETaxArchiveManager.archiveData(ETaxArchiveManager.java:89) 
at etaxarchive.ETaxArchive.main(ETaxArchive.java:33) 
Caused by: java.sql.SQLException: ISAM error: Lock Timeout Expired 
at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:413) 
at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3812) 
... 10 more 

有誰知道如何解決這個問題?

回答

1

我正在使用這行代碼,一個BLOB:

InputStream binaryStream = rs.getBlob(i).getBinaryStream(); 

我將其更改爲這行代碼:

InputStream test = rs.getBinaryStream(i); 

,我並沒有再次得到這個例外。

也許這不是問題,但對我來說,它的工作原理。