美文网首页
关于Java连接数据库更新不了数据的解决办法:executeUp

关于Java连接数据库更新不了数据的解决办法:executeUp

作者: jackLee | 来源:发表于2016-09-22 11:35 被阅读1963次

    问题

    问题描述: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>

    相关文章

      网友评论

          本文标题:关于Java连接数据库更新不了数据的解决办法:executeUp

          本文链接:https://www.haomeiwen.com/subject/gjdzettx.html