我在mysql中想执行一条更新语句  就是查找word列字符串为a的行,然后是它的cmp列的int型值自动加1,请问应该怎么写sql语句,而且如果没找到这一列那是会报错吗,应该怎么在程序里判断

解决方案 »

  1.   


    update A set cmp=cmp+1 where word='a';
      

  2.   

    用一楼的语句就可以。没找到这一列,当然会报错。你可以在程序中使用 try catch
      

  3.   

    你的程序语言是什么 ? java 不是有 exception 处理吗? 
      

  4.   


    update是修改符合条件的记录,如果一条记录都不存在,那么修改的行数为0.如果条件的列都不存在,那么这个UPDATE语句本身就是错误的。可以这样理解:找到了符合条件的行,就修改它。没找到,就算了。
      

  5.   

    我用这两句更新数据库
    String query="update phrase set cmp=cmp+1 where phrase='"+s+"'";
    stmt.executeUpdate(query);
    如果没有找到符合条件的行,那stmt.executeUpdate(query);的返回值是什么,我要判断是否找到符合条件的行,请问程序应该怎么写