我的数据库表中有大约500000行(图像网址),我的任务是检查图像网址是否响应然后我需要更新表格,结果如下(如果响应则是其他否)。
首先,我想我会将所有行都放入数据集并更新数据集中的所有行,然后我将更新我的数据库,但是当我将数据加载到数据集中时,我收到的错误如outofmemoryexception
。我无法将所有数据都存入数据集。
我以为我会一个接一个地更新行,但是它花费了太多时间,而且每次数据库都在点击,这是不好的。我正在使用c#和SQL
开发asp.net应用程序所以,如果您有更好的想法,请告诉我。
谢谢。
答案 0 :(得分:0)
而不是DataSet
使用SqlDataReader
来读取和处理循环中的数据。
https://msdn.microsoft.com/en-us/library/haa3afyz%28v=vs.110%29.aspx
答案 1 :(得分:-1)
您是否尝试过使用Stored Procedure
或在数据库中调用Functions
?我假设您正在使用一些ORM工具(甚至是原始ADO.NET)来获取所有值,然后在应用程序中更新值。精细。但您是否考虑过不下载结果并仅使用提到的工具在数据库中运行?