SqlCommand cmd1 = new SqlCommand("select count(*) from syscolumns where id=object_id('ADFlow') and name='test')", conn);SqlCommand cmd1 = new SqlCommand("select * from syscolumns where id=object_id('ADFlow') and name='test')", conn);
这是判断表ADFlow中是否存在test这个字段
但在aspx.cs页面如何得到这个SQL语句的返回值?
对于第一种 我用int n = cmd1.ExecuteScalar();来取值不行 提示错误
对于第二种 我用
DataSet ds = new DataSet();
SqlDataAdapter ad = new SqlDataAdapter(cmd1);
ad.Fill(ds);int n=ds.Tables[0].Rows.Count;也不行 
提示ad.Fill(ds);有语法错误
到底该怎么取值???

解决方案 »

  1.   

    SqlDataAdapter ad = new SqlDataAdapter(cmd1); 
    把SqlConnection对象传给SqlDataAdapter的构造函数里...SqlDataAdapter ad = new SqlDataAdapter(connection,cmd1); 
      

  2.   


    可以了...但是为什么第一种
    我用int n = cmd1.ExecuteScalar();来取值不行?
      

  3.   

    ExecuteScalar()方法返回什么类型?你拿什么类型接收的参数?
      

  4.   

    "select * from syscolumns where id=object_id('ADFlow') and name='" + add + "'", conn);
    然后用int n = cmd1.ExecuteScalar();来取值不行 
      

  5.   

    ExecuteScalar()返回的是object类型。int n = Convert.ToInt32(cmd1.ExecuteScalar())当返回值是空值的时候会得到0