jhyh001 2011-03-14 16:14
浏览 635
已采纳

关于jdbc的AutoCommit自动提交的问题

下面有一个方法 得到数据库的连接,并且我把AutoCommit设为false,
private Connection getCon() {
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(url, user, password);
con.setAutoCommit(false);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
然后我这里有个数据更新的操作
...
conn=getCon();
String updateSql = "update sys_admin set admin_password = ? where admin_id = ? and admin_password = ?";

        pstmt = conn.prepareStatement(updateSql);
        pstmt.setString(i++, newPwd);
        pstmt.setLong(i++, adminId);
        pstmt.setString(i++, oldPwd);
        if(pstmt.executeUpdate() == 1){
                             //执行到这里的时候数据已经在数据库里更新了,
            return MessageCode.SUCCESS;
        }
                      ....

请问我没有conn.commit()之前数据就已经更新了吗?;

  • 写回答

1条回答 默认 最新

  • xing23777 2011-03-14 17:43
    关注

    事务的commit之前,数据库内容尚未修改,修改的只是内存缓冲区中的数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题