我想实现读一条记录
过了三秒在读下一条
同一个记录集怎么实现啊我现在是赋数组的
这样数据量大了肯定不行
            //读取数据库给数组赋值
            string strConnection = "user id=sa;password=nd;";
            strConnection += "initial catalog=Wallpapers;Server=202.96.15.85;";
            strConnection += "Connect Timeout=30";
            SqlConnection objConnection = new SqlConnection(strConnection);
            objConnection.Open();
            string sqlSelect = "select url from tb_picture order by id";
            SqlCommand sqlCmd = new SqlCommand(sqlSelect, objConnection);
            SqlDataReader aReader = sqlCmd.ExecuteReader();
            while (aReader.Read())
            {
                string aa = aReader["url"].ToString();
                PicArray.Add(aa);
            }
            objConnection.Close();

解决方案 »

  1.   

    while (aReader.Read())
                {
                    System.Threading.Thread.Sleep(3000);//加上这句
                    string aa = aReader["url"].ToString();
                    PicArray.Add(aa);
                }
                objConnection.Close();
      

  2.   

    //间隔读取记录
                if (aReader.Read() == true)
                {
                    aReader.Read();
                    MessageBox.Show("有记录"+aReader["url"].ToString());
                }我发现aReader.Read();竟然是跳到下一条的下一条
    这是怎么回事
      

  3.   

    你这样实现不太好。
    aReader一直连着数据库不放,别人要读怎么办
    你最好把数据先成块读进内存,然后想什么时候读就什么时候读。
      

  4.   

    Read()只会把游标向前移动,不能后退
    用Dataset吧
      

  5.   

    如果你的数据有排序,而且在不断变化,最好只读需要的一条
    如果数据已经固定,只是想实现每隔三秒取一条数据的效果,建议用DataSet结合缓存。
    需要循环的话,可以有很多种方法实现。例如:
    bool blRead = true;
    while(blRead)
    {
         System.Threading.Thread.Sleep(3000);
         //你的处理程序或者数据读取过程
         //如果有意外条件需要跳出
         if (跳出条件== true)
         {
              blRead = false;
         }
    }
      

  6.   

    现在我的问题是           if (aReader.Read() == true)
                {
                    aReader.Read();
                    MessageBox.Show("有记录"+aReader["url"].ToString());
                }我发现aReader.Read();竟然是跳到下一条的下一条
    这是怎么回事
    没有写错吧你这样实现不太好。
    aReader一直连着数据库不放,别人要读怎么办
    你最好把数据先成块读进内存,然后想什么时候读就什么时候读。
      

  7.   

    aReader只能一个人连吗
    不是吧多个客户端不能连吗