命令超时和连接超时之间的区别

时间:2011-03-07 12:09:06

标签: asp.net sql

连接超时和命令超时有什么区别?

在我们的应用程序中,有时会显示超时错误。当我们将命令超时值增加到100(默认值为30)时,它的工作正常。增加命令超时值是否有任何问题。

谢谢,
马赫什

2 个答案:

答案 0 :(得分:7)

ConnectionTimeout是您的代码在尝试打开与DB的连接时应该等待的时间

CommandTimeout是代码等待SQL代码执行的时间。

如果您达到命令超时,则SQL需要很长时间才能执行,因此您可能需要check your query。如果您的查询已经过优化,那么提高命令超时可能是让客户端工作的唯一方法。

答案 1 :(得分:5)

如上所述,连接超时是与DB服务器建立连接的超时。命令超时是命令执行的超时。

可以扩展命令超时,但在ASP.NET中执行此操作时,您应该也知道请求执行超时。您可以通过Server.ScriptTimeout在代码中设置,也可以在httpRuntime/@executionTimeout中全局设置。 .NET 2.0+的默认值为110秒。

但通常这很可能是构建应用程序的错误方法。除非您正在进行一些重要的在线报告,否则很少会被执行。