关于Java连接数据库更新不了数据的解决办法:executeUpdate()方法

问题

问题描述:Java写的一个MySQL帮助类能够正常连接MySQL数据库,且能够查询MySQL数据库的数据,封装了一个更新数据的方法,执行数据更新,没有异常,返回Int值,但是无法更新数据库的数据

问题分析:语法没有错误,sql语句也没有任何错误,很奇怪的问题

解决办法:因为在getConnection()方法中将自动提交设置为了false, conn.setAutoCommit(false);顾需要在执行查询方法中添加提交方法。

代码如下:

<pre>
正确的代码:
public int executeUpdate(String sql) throws SQLException{
Statement execSql = null;
execSql = conn.createStatement();
execSql.setQueryTimeout(QUERY_TIMEOUT);
// return execSql.executeQuery(sql);

    //conn.commit();

    int result = execSql.executeUpdate(sql);
    conn.commit();
    return result;
}

</pre>

<pre>
原来的代码
public int executeUpdate(String sql) throws SQLException{
Statement execSql = null;
execSql = conn.createStatement();
execSql.setQueryTimeout(QUERY_TIMEOUT);
return execSql.executeQuery(sql);//问题在于没有提交,好坑
}
</pre>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本人的环境为Myeclipse10、MySQL5.7.15 本文包括:简介JDBC编程步骤打通数据库程序详解—Dr...
    廖少少阅读 3,983评论 7 39
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,742评论 18 399
  • 本文包括:1、事务概念2、MySQL管理事务3、JDBC控制事务进程4、事务的特性(ACID)5、事务的隔离级别6...
    廖少少阅读 850评论 0 3
  • 一. Java基础部分.................................................
    wy_sure阅读 3,832评论 0 11
  • 前段时间组织了一次院级的班级建设答辩,这是我第一次参加学院的答辩会。参加这次答辩的是各班的团支书,在我收到他们的答...
    这是我的树洞阅读 1,135评论 0 1