0

在 Oracle 11g(11.2.0.1.0,64 位)数据库中,我有一个 porcedure(包的一部分),它使用 FORALL 来更新表。FORALL 在动态 SQL 部分中,使用 EXECUTE IMMEDIATE 执行。

当我从 PLSQL Developer 调用该过程时,结果很好,表按预期更新。

当 Java 应用程序调用的过程(使用 JDBCTemplate.execute(...),JDBC 瘦客户端)然后 FORALL 更新随机失败。并不是所有更新的记录表中​​应该只更新其中的一部分。未更新的记录集从试验到试验随机变化。

此处引用的代码相当复杂。首先我想知道是否有什么特殊的事情,在Java调用的情况下要检查的条件。无论如何,从 Java 调用 Oracle 存储过程时使用什么技术以及如何正确使用。Java 部分不是我开发的。我怀疑该代码存在一些问题。PLSQL 部分如何在独立模式下正常工作但在 Java 应用程序中失败。

感谢您的任何评论和提示。

4

0 回答 0