我的代码如下:
sqlcommand cmd=new ("select * from a where ID=@ID);
SqlParameterCollection tt = cmd.Parameters;
tt.AddWithValue("@ID", ID);
SqlDataAdapter rs = new SqlDataAdapter();
rs.SelectCommand = cmd;
DataSet ds = new DataSet();rs.fill(ds,"inf");请问 如果这里这么写 
where ID in (@ID)tt.AddWithValue("@ID", ID);ID值为”1,2" 是否可以。。现在为什么查不到数据呢?(其实有数据)

解决方案 »

  1.   

    那你执行select * from a where ID=1,2有数据吗?
    估计你是想select * from a where ID in (1,2)吧?
      

  2.   

    对。也许我没有说清楚如果 id in (@ID) 当@ID为"1,2"是就查不到数据。。不知道是不是 AddWithValue属性不支持 "1,2"传值方式。。但在SQL里,可以查询到数据的
      

  3.   

    select * from a where ID IN"ID=(1,2)