批量更新数据, id是int类型的ids是string型的
update  from set sex=@gengxinzhi  where id in (@ids)
SqlParameter[] objParameter = new SqlParameter[2];
                objParameter[0] = new SqlParameter("@gengxinzhi", gengxinzhi);
                objParameter[1] = new SqlParameter("@ids", ids);
如果批量更新的话ids的值就会是‘23,24,25’
但是id是int型的
怎么办??  请高手指点

解决方案 »

  1.   

    这个应该用拼接字串的方式了
    "update from set sex='"+@gengxinzhi+"' where id in ("+@ids+")"
      

  2.   

    只要最后的SQL语句是 id in (23,24,25) 这样就不会出错啊!~
      

  3.   

    不能用拼接字符串的形式,   最后sql语句id in ('23,24,25')
      

  4.   

    3楼的方法不对,括号里面不用加单引号的。
    1楼的正解
    楼主在取值的时候,@ids的值应该是Reqeust["参数"]这样子得来的吧?你就按1楼的那样做就行了。
      

  5.   

    你不会把两头的引号去掉呀,适当处理一下ids
      

  6.   

    update from set sex=@gengxinzhi where charindex(','+ltrim(id)+',',','+@ids+',')>0"
      

  7.   

    update from set sex=@gengxinzhi where id in (@ids)