Code Bye

net怎么读取完一个表的数据,再次循环读取里面的数据

.net怎么读取完一个表的数据,再次循环读取里面的数据,第一次是随机抽取里面表的数据,读取一条历史表就存在一条数据勒
解决方案

2

一般不这样做,需要什么数据就读取什么数据。假如表里面记录很多的话,一次读取全部数据会比较慢。至于读取的数据无论是DataTable还是List<T>,都可以用foreach进行迭代处理。

2

dateset,或LIST   循环的话用foreach或for都可以实现的  例如  foreach(var item in temp){}

3

获取MaxID,[0,maxId]中取随机数,然后按照ID读数据不就行了

3

本人的理解是,LZ希望使用随机排序读取一张表的全部记录?
SELECT [ID] FROM [TABLE] ORDER BY newid()
public void ReadData(string connectionString)
{
    using (var connection = new SqlConnection(connectionString))
    {
        var command = new SqlCommand("SELECT * FROM [TABLE] ORDER BY newid()", connection);
        var reader = command.ExecuteReader();
        while (reader.Read())
        {
            //......
        }
        reader.Close();
    }
}

10

select ROW_NUMBER()over(order by NEWID()) rid,  * from 表名
order by rid

通过上面的语句,打乱了顺序,
然后 装在到datatable中,
原因是是打乱顺序的,所以你可以从第一条开始获取,
这样既保证了随机获取,也保证了不会重复获取。
获取到最后一行只需要判断一下datatable的总行数就行了。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明net怎么读取完一个表的数据,再次循环读取里面的数据