在页面操作用MySqlCommand中的ExecuteNonQuery执行select时会返回-1
在CMD下操作返回的是正常的1
会什么会这样呀.还有..请问个各位insert update update select 执行时各用什么语句操作呀..老是搞糊涂呀.

解决方案 »

  1.   

      删除、修改、添加的时候是用这个ExecuteNonQuery,返回影响的行数
      

  2.   

    那如果是select 的话.要用哪个查询呀.
      

  3.   

    ExecuteNonQuery():一般用在增加,更新,查询状态判断.
    ExecuteReader():将SQL语句发送给SqlConnection并生产一个SqlDataReader类对象,该SqlDataReader对象包含SQL命令返回的数据;
    ExecuteScalar()执行SQl查询,并返回查询结果集中的第一行的第一列
    http://www.cnblogs.com/tinachang021/archive/2008/08/15/1268841.html
      

  4.   

    insert update update 用这个ExecuteNonQuery,返回影响的行数如果select 只返回一个值时,用 cmd.ExecuteScalar();如果 select 返回一个记录集时:
    DataSet ds = new DataSet();        SqlConnection cn = new SqlConnection("ConnString....");        cn.Open();        SqlCommand cmd = new SqlCommand("select * from TB ",cn);        SqlDataAdapter da = new SqlDataAdapter(cmd);              da.Fill(ds);        cn.Close();        return ds;
      

  5.   

    简单点,如int num=Convert.Toint32(cmd.ExecuteNonquery());