我使用JDBC将190 000多行插入到informix数据库中的表中。首先,我将连接自动提交设置为false,并且在第1000行上进行连接提交。然而,我得到了这个例外:
java.sql.SQLException: Long transaction aborted.
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.j(IfxSqli.java:2197)
at com.informix.jdbc.IfxSqli.getaRow(IfxSqli.java:4525)
at com.informix.jdbc.IfxResultSet.next(IfxResultSet.java:526)
at etaxarchive.FillDataManager.insertIntoTable(FillDataManager.java:173)
at etaxarchive.FillDataManager.fillTableData(FillDataManager.java:129)
at etaxarchive.ETaxArchiveManager.insertDataInArchiveTables(ETaxArchiveManager.java:224)
at etaxarchive.ETaxArchiveManager.archiveData(ETaxArchiveManager.java:97)
at etaxarchive.ETaxArchive.main(ETaxArchive.java:38)
Caused by: java.sql.SQLException: RSAM error: Long transaction detected.
at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:413)
at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3812)
... 10 more有人能想到这个例外吗。
发布于 2014-11-04 14:19:13
您可以与db管理员交谈,并建议增加日志大小。您还可以在一个事务中尝试使用较小数量的行: 500、200甚至100行。较小的事务可以更快地工作--尝试使用db admin对其进行优化。
更多信息:http://www.tek-tips.com/viewthread.cfm?qid=256031
https://stackoverflow.com/questions/26725465
复制相似问题