在开开了一个DataReader后能否再打开一个DataReader对象呢?
编译器总是提示说要将先前的关闭才行.但是,我有一个对取出的数据库结果集需要循环,又需要再次建立DataReader来取数的话我应该怎么做呢?

解决方案 »

  1.   

    DataReader只能開一個,
    把第一個DataReader換成DataSet就可以了!
      

  2.   

    SqlCommand cmd = new ("select * from A;Select * from B",conn);
    using (SqlDataReader rd = cmd.ExecuteReader())
    {
      do
      {
         while(rd.Read())
        {
           //...读取数据
        }
      }
      while(rd.NextResult());
    }
      

  3.   

    你是不是两个DataReader用到了同一个Connection?
    这样的话是不能同时打开的!