【问题标题】:SQL timeout error with "faster" queries“更快”查询的 SQL 超时错误
【发布时间】:2010-11-25 05:11:45
【问题描述】:

我有一个奇怪的问题,执行返回较小数据集的查询(并且运行速度更快)比执行相同的查询并返回更大的数据集(并且运行时间有时更高)时出现以下错误。

超时。在操作完成之前超时时间已过或服务器没有响应。

我将一组选项传递给存储过程。当该组选项不包含将触发更多表连接和更大结果集的选项时,提出了上述异常。我以为我之前已经通过增加连接字符串中的 Connection Timeout 属性解决了这个问题,但事实并非如此。

有谁知道我该如何解决这个问题?我已经通过 SQL 探查器并使用更小和更大的输入运行查询,结果符合预期。输入越小,查询运行速度明显加快(但在客户端超时),查询越大,运行速度越慢(但将结果返回给客户端)。

【问题讨论】:

    标签: asp.net sql-server wcf fluorinefx


    【解决方案1】:

    仅出于性能的考虑,在每个查询中添加 with (nolock) 以最大程度地减少死锁的机会(假设有死锁的机会)

    【讨论】:

    • 我很确定该指令已经存在。不过这很奇怪,因为在客户端超时的查询在 SQL Management Studio 中比没有超时的查询运行得更快。
    猜你喜欢
    • 1970-01-01
    • 2011-10-05
    • 2013-07-13
    • 2011-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-05
    • 2012-07-16
    相关资源
    最近更新 更多