ps=con.prepareStatement("update "+tableName+" set "+field+"="+field+1+" where id=?");
field+1 这里有问题

解决方案 »

  1.   

    数据库字段是varchar(50)也没关系,取出来的时候转为int 或 long 型,
    再加1,
    之后再放入数据库中。
      

  2.   

    ps=con.prepareStatement("update "+tableName+" set "+field+"="+field+1+" where id=?");
    你这句sql是什么啊??
    update tableName set field = field + 1 where id = ?;我想你这个表中的字段不会是一直在变的吧?? 怎么字段名会是field呢??
    你每次给这个字段加一,下次就不是这个字段了,而是field+1字段啊难道这个字段是动态字段吗??如果不是肯定是要出错的。。你传来的field是字段名还是字段值??
    字段名的话,先找出字段值再加1,怎么是字段名+1呢?
    字段值的话,字段名可是会变的想想看?
      

  3.   

    别偷懒啊,你可以先把当前的field select出来,然后将field转型成整型,然后加一以后再执行ps=con.prepareStatement("update "+tableName+" set "+field+"='"+newfield+"' where id=?");其中newfield就是那个加一之后的整型值