尝试从 Java 调用 PL/SQL 存储过程时出现以下错误:ORA-02089: COMMIT is not allowed in a subordinate session
它在 Oracle 中测试良好。有人对这个有经验么?
最佳答案
试试这个方法;
- 更改数据源以使用 Non-XA(并勾选“Supports Global 事务”和“模拟两阶段提交”按钮)
- 从您的代码中删除 COMMIT。
- 使用“PRAGMA AUTONOMOUS_TRANSACTION”。这将创建一个 允许使用 commit.For 的单独事务 示例:CREATE PROCEDURE XXX AS PRAGMA AUTONOMOUS_TRANSACTION;开始 ……
关于java - Oracle ORA-02089 与 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11936220/