interrr 发表于 2008-7-9 19:15:53

mysql update后 返回值正确 但数据库却没改!

我用java做开发 jdbc连mysql数据库
在执行update后 它的返回值正确 但数据库却没改!我还在执行后 再去查一次,查出来的都是正确的,可随后我自己再去查却发现根本没改。比较郁闷``` 不过这种情况不是总发生,只是偶尔发生。另外我也用了锁,下面是代码:

conn = DriverManager.getConnection (url, name, pass);
conn.setAutoCommit(false);
stmt = conn.createStatement();
               
int i = 0;
while(i++ <= 3){
                     
    stmt.executeUpdate(sql_update);
    conn.commit();
   
    Thread.sleep(1000);
    rs = stmt.executeQuery(sql_query);
    if(rs.next()){

      // 如果查出数据,就返回,否则再循环一次
      out.print("1");
      return;
    }
}
conn.setAutoCommit(true);

麻烦各位高手帮我找下问题的原因,谢谢了!!!

kider 发表于 2008-7-10 11:12:25

猜测,是不是你有很多个数据库,偶尔产生混乱,而插入的数据库和查看的数据库不是一个呢..., 或其他的问题...

要不在程序里多设置几个诊断点,帮助诊断问题

interrr 发表于 2008-7-15 19:18:54

谢谢你的回复!

只有一个数据库,不会出现这种问题的。而且日志也打的挺详细。唉 郁闷。

fire9 发表于 2008-8-18 12:55:58

开启MYSQL的LOG日志来查问题。
页: [1]
查看完整版本: mysql update后 返回值正确 但数据库却没改!