从Web生成报告时数据库超时

时间:2011-04-20 22:15:09

标签: asp.net sql-server timeout

我在ASP.NET应用程序中有一个报告。当我尝试从浏览器生成它时,它会因数据库超时错误而崩溃,但是当我在SQL Management Studio中执行完全相同的查询时,它会在5秒内显示结果集。

查询在代码隐藏文件中写入了不清洁的SQL(没有使用ORM),它的参数来自Web表单,所以我知道确切生成的查询是什么。

问题的原因是什么?

1 个答案:

答案 0 :(得分:0)

首先,使用SQL事件探查器附加到数据库并查看正在发送的查询。用于其他测试。

其次,将连接超时设置为300秒之类的荒谬。然后对命令超时执行相同的操作。

第三,确保您的应用程序和管理工作室实例正在与同一数据库通信...最好具有完全相同的用户权限。

再次运行。然后再次运行它。

数据库可能需要花时间进行初始加载(因此第一次查询需要一段时间),并且管理工作室的查询正在执行,而数据库仍然“热”可以这么说。

最后,你说管理工作室在5秒内显示结果。它是5秒开始填充查询结果窗口还是5秒,整个查询完成执行。那些时间可能完全不同。