C# 如何在不降低服务器/程序速度的情况下从sql检索批量数据
我有一个程序,它将根据特定的日期范围从sql检索数据。。问题是,当日期范围设置为一年或更大时,数据加载速度太慢,有时程序将无法响应。有没有办法避免这种情况?您可以使用BackgroundWorker组件在后台线程中加载数据 这仍然需要时间,但程序不会被冻结 或者,您可以修改程序以加载较少的数据。C# 如何在不降低服务器/程序速度的情况下从sql检索批量数据,c#,sql,sql-server-2008,C#,Sql,Sql Server 2008,我有一个程序,它将根据特定的日期范围从sql检索数据。。问题是,当日期范围设置为一年或更大时,数据加载速度太慢,有时程序将无法响应。有没有办法避免这种情况?您可以使用BackgroundWorker组件在后台线程中加载数据 这仍然需要时间,但程序不会被冻结 或者,您可以修改程序以加载较少的数据。 例如,您可以将使用数据的逻辑移动到服务器上的存储过程。另一个选项是防止用户选择如此大的日期范围 这可能看起来有限制,但通常当用户看到10000条单独的记录时,他们会意识到他们需要使查询更加具体。检索大型
例如,您可以将使用数据的逻辑移动到服务器上的存储过程。另一个选项是防止用户选择如此大的日期范围
这可能看起来有限制,但通常当用户看到10000条单独的记录时,他们会意识到他们需要使查询更加具体。检索大型数据集所需的时间只会浪费服务器、网络和用户的时间。一年有多少数据?你的桌子上有索引吗?您的查询是什么样子的?需要更多信息:它是同步的吗?有多少数据回来了?SQL查询是快速的,还是挂在数据库中?甚至可以批处理这些数据吗?只带回前100条记录,然后根据需要检索其他记录,这是否可以接受?