【Mysql】—— 报错:Can't call commit when autocommit=true

作者:佚名 上传时间:2019-05-28 版权申诉
java.sql.SQLException: Can't call commit when autocommit=true
 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:934)
 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
 at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1646)

今天遇到这个问题,使用hibernate的时候报上面的错!

上网查了下原因,是因为hibernate中使用了,commit()或者rollback(),这两个都需要一个先决条件,就是mysql的自动提交功能要关闭。

commit()的作用是:提交上一次提交或者回滚后的修改的内容,并释放连接中的相关内容。

rollback()的作用是:回滚到上一次提交或者回滚时的内容。

上面两个方法都只能在已禁用自动提交的模式中使用。

因此, 关闭mysql自动提交 就可以了。

在mysql客户端中:

  mysql>select @@autocommit;

查看是否开启了自动提交, 如果为1,表明开启了。如果是0,表明关闭

可以采用下面的方式,进行关闭。

  mysql>set autocommit=0;

本文转自博客园xingoo的博客,原文链接: 【Mysql】—— 报错:Can't call commit when autocommit=true ,如需转载请自行联系原博主。

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
Mysql】—— Can't call commit when autocommit=true
java.sql.SQLException: Can't call commit when autocommit=true at com.mysql.jdbc.SQLError.c
Can't call commit when autocommit=true(转)
java.sql.SQLException: Can't call commit when autocommit=true at com.mysql.jdbc.SQLError.c
SVN commit:'Commit failed (details follow): Can't create directory'
这个错误通常是由于SVN客户端没有足够的权限来创建新的目录而引起的。这可能是因为你试图提交到一个你没有写权限的目录,或者是因为SVN服务器配置不正确。要解决这个问题,首先确保你有足够的权限来在目标目录
SVN 1.0及以上
SVN
2024-03-06 10:17
MySQL Study之--MySQL关闭自动commitautocommit
对于mysql来讲,在事务处理时,默认是在动提交的(autocommit),以下方法可以自动关闭autocommit;
MySQL Study之--MySQL关闭自动commitautocommit
对于mysql来讲,在事务处理时,默认是在动提交的(autocommit),以下方法可以自动关闭autocommit;
MySQL Study之--MySQL关闭自动commitautocommit
对于mysql来讲,在事务处理时,默认是在动提交的(autocommit),以下方法可以自动关闭autocommit;
MySQL报错1093–You can t specify target table t for update in FROM clause Time
报错内容: 1093 – You can’t specify target table ‘t’ for update in FROM clause, Time: 0 前情提示: Mac OS10.14
PDF
100KB
2020-12-17 00:06
MySQL事务autocommit自动提交操作
MySQL默认操作模式就是autocommit自动提交模式。通过以上设置autocommit=0,则用户将一直处于某个事务中,直到执行一条commit提交或rollback语句才会结束当前事务重新开始
pdf
154.61 KB
2021-09-19 23:56
log4j:ERROR setFile(null,true) call failed.
log4j:ERROR setFile(null,true) call failed. java.io.FileNotFoundException: /opt/logs/log.log (没
JDBCTemplate在AutoCommitTrue时手动控制事务
原文发布于:http://www.gufeng.tech/  谷风的个人主页      这是工作中遇到的一个真实问题的处理过程,如果对分析过程不感兴趣,可以直接跳到最后看最终方案