我用JAVA更新IBM DB2里面某TABLE的一条记录,(不是BATCH UPDATE,仅一条)
用statement.executeUpdate去UPDATE这条记录
我去DB2里面查询这条记录,已经确切的肯定这记录已经被JAVA 的statement.executeUpdate 语句UPDATE成功.
当UPDATE成功本来executeUpdate应该返回1表示更新成功一条记录.
返回值是缺是0 .这返回值是否和DB2 9有关系? 或者和JDBC有关?为什么会返回错误的值0?急需得到帮助,谢谢. 

解决方案 »

  1.   

    有可能跟驱动有关,不过最大可能还是你程序的原因,看看这个http://topic.csdn.net/u/20070614/12/4b78bb61-9e8c-438a-998e-67ee93df9168.html
      

  2.   

    此方法成功返回1 失败返回0  证明执行update确实没通过  建议全部代码上来
      

  3.   

    感谢二楼的gesanri这贴也遇到我这样的问题,但经过许多人讨论后都没有得到相关的讨论结果.
    希望有经验的技术开发人士可以谈谈你们对此的经验.
    http://topic.csdn.net/u/20070614/12/4b78bb61-9e8c-438a-998e-67ee93df9168.html代码应该没有问题.因为数据可以成功的UPDATE.
    而且SYSTEM.OUT把executeUpdate返回值打印后的确是显示0.这返回值是否和DB2 9有关系? 或者和JDBC有关?为什么会返回错误的值0? 
    是IBM的BUG? 是JAVA的BUG? 希望大家能一起讨论.
      

  4.   

    java的bug 说的太严重了吧...怀疑该事件的真实性..
      

  5.   

    应该是和DB2的驱动有关,毕竟JDBC的具体实现都是由具体数据库厂商去做实现的。