我把执行类放到数据层 然后来执行
strql="update bbs set click='click+1' where id="+穿过来的
   public static int updatef(string strql)
        {                CreateConnection();
                MySqlCommand sqlcmd = new MySqlCommand(strql, mysqlconn);
                int i = sqlcmd.ExecuteNonQuery();
            return 1;
        }
上面的MYSQL语法是在MYSQL里正常执行,可是在程序里i变为1 到数据库就没更新大家 我有什么地方写错了?

解决方案 »

  1.   

    strql="update bbs set click='click+1' where id="+穿过来的这个语句能在MYSQL中执行?
    建议你调试中看一下 strql 的内容到底是什么!strql="update bbs set click=click+1 where id=123"
      

  2.   

    update bbs set click='click+1' where id=1
    影响的数据栏: 1
    时间: 0.031ms
    我用这个实验的Navicat for MySQL click='click+1' 不带''就更新不了
      

  3.   

    int i = sqlcmd.ExecuteNonQuery();
    你这个是执行非查询语句 执行后返回的为Command对象所影响的行数
    因为id 是唯一的  所以 影响的行数为1
    你用i来接收 该对象的返回结果 他自然也是1啦
    不过你数据库中的值应该变了才对
    你是怎样调用这个函数的啊  
    能不能把代码 贴出来啊