关于Oracle class12.jar和 ojdbc14.jar 引发的问题

采集数据入库的时候,原来好用的程序,不知道突然间怎么报了个错:
java.sql.SQLException:ORA-01461:仅能绑定要插入LONG列的LONG值
atoracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
atoracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
atoracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
atoracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
atoracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181)
atoracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:543)
atoracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1028)
atoracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2888)
atoracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:2960)
搞得我也很郁闷,原来以为是字符太多,查看了数据库看,约束的字符还是很大的,在网上做了多方的查找之后说有可能是驱动包的问题,把它更换成class12.jar
试了一下,果然好使。class12好用了,那我用别的ojdbc14难道就不好用了吗?我用在网上下了一个ojdbc10.2.04版本的,一试依然好用。
由此推断是ojdbc14.jar包的版本问题;

由此总结了一下错误产生的原因:

1.列约束太小,如果是字符比较多可以使用clob来解决,现在来说clob是支持4GB;

2.就是驱动版本的问题,版本低或者是版本不兼容。

你可能感兴趣的:(ojdbc14.jar)