java.sql.SQLException: Could not commit with auto-commit set on

java.sql.SQLException: Could not commit with auto-commit set on 
        at oracle.jdbc.driver.PhysicalConnection.commit(PhysicalConnection.java:2356) 
        at oracle.jdbc.driver.PhysicalConnection.commit(PhysicalConnection.java:2403) 
        at com.mchange.v2.c3p0.impl.NewProxyConnection.commit(NewProxyConnection.java:803)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

    at java.lang.Thread.run(Thread.java:785) 

 

解决方法:本人原来用的驱动是 ojdbc6-12.1.0.2.0.19120445.jar 报上面错误,换成ojdbc5_g.jar 即可解决上面问题

思路来自:

 

This kind of exceptions occur when the Oracle JDBC Driver (ojdbc6.jar) version 12 or above will be used. Version 12 and above of the driver is more strictly than earlier driver versions.

You can solve the problem, you have few options:

  1. Change jar file to old version.( Below 12; usually issue occurs while migrating to new server)
  2. Override behavior of new jar version(ojdbc6.jar) with setting below JVM arguments.

    -Doracle.jdbc.autoCommitSpecCompliant=false

    IBM WAS users, refer this link:

  3. Set Auto Commit off in Java/SQL:

    Java:

    conn.setAutoCommit(false);

    Oracle:

    SET AUTOCOMMIT OFF

 


https://stackoverflow.com/questions/23953534/java-sql-sqlexception-could-not-commit-with-auto-commit-set-on-at-oracle-jdbc-d

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值