我有一个大约200,000长度的大图像,以字节[]为单位。
每当我尝试创建 BLOB/CLOB 对象
Blob blob = con.createBlob();
或
prepStmt.setBlob(1, is);
或尝试设置它的值,如上面所示,它会引发以下异常
“org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.setBlob(DelegatingPreparedStatement.java:388) 处出现 java.lang.AbstractMethodError”
我尝试通过设置它
prepStmt.setBinaryStream(1,data,length);
它也会抛出异常,因为 setBinaryStream() 方法最多只能存储 3000 字节的数据,不能超过这个数。
我用谷歌搜索并尝试了所有可能的解决方案。
- 将 JDBC 和 ODBC jar 更新为最新版本
- 也尝试过这个
prepStmt.setObject(1, data, Types.BLOB);
我发现应用程序不允许我实例化或设置 BLOB/CLOB 对象。
我正在使用的 OJDBC4.jar 和 Oracle 11g 数据库
任何人都可以帮助我做错什么吗?
最佳答案
我通过升级 JDBC 和 ODBC jar 并将它们放入 Tomcat lib 文件夹中解决了该问题
关于java - 不允许创建或设置 BLOB/CLOB Oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20209803/