HTTPHandler的几个大SELECTS或许多小SELECTS(两个串行)?

时间:2012-12-17 15:03:24

标签: .net sql-server database-connection httphandler large-data

我正在尝试从数据库(客户端请求)导出大型Excel文件。我目前使用两个选项从两个表中获取数据并将它们存储在两个sqldatasets中。我在文件开始上传之前有一段延迟,因为每个表最多可以提供10万行。

我已经关闭了httphandler中的outputbuffer,并将第一个表中的每一行导出为其自己的vb.net html表(具有来自第二个数据集的相关行)。一旦上传开始,它就会非常快,但客户仍然希望摆脱这种延迟。

我想我可以将两个大选项拆分成许多小选项,以便在构建html表时使用,打开和关闭每个连接。

sql server可以处理吗?

有什么缺点?

我到处寻找,什么都找不到。非常感谢提前!

限制

第二个表依赖于第一个表,因此我可以为所有内容点击一次并为第一个表的每一行循环或多次...对吗?...

1 个答案:

答案 0 :(得分:0)

忽略我之前的回答。我很困惑。

我在这里看到两种可能性:

  1. 您的查询很慢。
  2. 您正在将查询结果转换为内存中的集合(人们通常会.ToList(),因为他们完全不需要)。
  3. 在这两种情况下,我们都需要看到你的代码。我可以告诉你的一件事是,在子集查询上拆分查询可能会减慢你的速度。