如何解决OraclePreparedStatement.setupBindBuffers -32593
在尝试使用CallableStatement将记录插入数据库时,出现异常。 总记录:1300 由于某些安全原因,无法为此提供代码段,但对我项目中的其他流程而言,它的正常CallableStatement可以完美执行。
在1327处引发异常。stmt.executeBatch()。 stmt是CallableStatement的对象。
解决方法
Oracle JDBC驱动程序可能会引发ArrayIndexOutofBoundsException。
Here
,您将从oracle获取错误的详细信息。
如果批次太大,就会发生。因此,要么在OracleOutput组件中将批处理设置为较小,要么尝试使用其他模式插入数据。
为了解决此问题,必须从Oracle的支持站点下载针对BUG 6396242的补丁程序,并在使用该补丁程序之前将其应用。
您可以通过从OJDBC
下载11或更高版本的ojdbc来解决此问题。
如果您在BUG-6396242
处看到此自述文件,则该文件已在 Oracle JDBC Drivers release 11.1.0.7.0 - Production
版本中修复。
您的问题可能与Oracle JDBC驱动程序#6396242错误有关: ArrayIndexOutOfBoundsException:-32nnn 。
请尝试从Oracle支持部门下载该错误的补丁。
如果您没有访问Oracle支持的权限,还可以从以下link下载适用于数据库版本的Oracle JDBC驱动程序的最新版本,这也可以解决此问题。
,这是mysql驱动程序中的一个已知问题,已在5.1.13
更详细的信息中修复[此处]
1,因此要解决您的错误,只需将其升级到最新版本即可。
您有一个错误。它在您的代码中。
转到文件com.mypackage.accounts.server.util.UtilClass。
转到第1356行。
在它上面,您将找到至少1个数组访问权限(即foo[x]
)。 []
中的数字?由于某种原因,它是-32593。如果该行中有多于1个[]
,则为其中之一,无法从此堆栈跟踪中分辨出哪个。
没有粘贴代码,我们无法告诉您原因。我可以告诉你,PreparedStatement与此无关。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。