int i=0;
while (myReader.Read())
   {
       Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
       i= i + 1;
    }
    // always call Close when done reading.
    myReader.Close();
只能自己计算

解决方案 »

  1.   

    用SqlCommand 的ExecuteNoQuery返回值就是啦
    cn时连接对象
    SqlCommand cm=new SqlCommand("select * from table",cn);
    int RowCount=cn.ExecuteNoQuery();
      

  2.   

    自己写个程序加吧,sqldatareader是只读向前的,未到读完之前它不知道自己有几条
      

  3.   

    就是着句
    while (myReader.Read())
       {
           Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
           i= i + 1;
        }
        // always call Close when done reading.
        myReader.Close();但之前要捆绑myReader.Read()
    例如:myReader=System.Data.sqlClent.Adapter
    语句我没检查。但大概方向不会错
      

  4.   

    如果我想把数据库读出的第一条记录放在一个textbox里面,第二条放在另外一个textbox里面?
    如何实现啊?
      

  5.   

    int i=0;
    while (myReader.Read())
       {
           i= i + 1;
           textboxArray[i].text=myReader.GetString(0);
          //各个textbox控件做成数组,如果就有两个的话,也可以直接判断
          //if (i==1)
          //{
          //    textbox1.text=myReader.GetString(0);
          //}
          //else if (i==2)
          //{
          //     textbox2.text=myReader.GetString(0);
          //}
        }
        // always call Close when done reading.
        myReader.Close();
      

  6.   

    BattleCry(呐喊)兄说的
    SqlCommand cm=new SqlCommand("select * from table",cn);
    int RowCount=cn.ExecuteNoQuery();
    不尽正确,而这两句恰好不对,若第一句改为
    SqlCommand cm=new SqlCommand("update table set ...",cn);

    SqlCommand cm=new SqlCommand("insert into table...",cn);
    就能正确获得值,因为ExecuteNoQuery()方法只对不返回结果集的SQL语句才能返回受影响的行数。
    若要用SqlDataReader的对象直接得到记录条数不可能,因为与DataSet的原理就不同,DataSet是一次性填入所有数据,当然能得到记录数,而SqlDataReader是迭代式返回,所以不到迭代到最后一条记录是不可能知道记录数的。
      

  7.   

    http://expert.csdn.net/Expert/topic/1988/1988048.xml?temp=.9115259
      

  8.   

    如果能接受的话,可以换用SqlDataAdapter,读入DataSet中,想怎么折腾就随便你了,很好使