SqlServer Timeout in ASP.NET



我有一个 SP,在 SqlServer 环境中需要 20 秒,但有时在我的 ASP.NET 页面中,当我运行 SP 时,我得到 SqlServer 超时说明。我事件将命令超时和连接超时设置为 60,但我仍然收到异常。我将不胜感激地帮助我。

其他一些操作可能会锁定表。 将超时设置为更高的值并检查。

运行 proc 时,执行sp_locksp_who2系统过程以进行任何锁定

你可以

试试

  cmd.CommandTimeout = 0;

如果您执行查询需要很长时间。

1)尝试了类似??

SqlCommand cmd = new SqlCommand("MyReport", conn);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.CommandTimeout = 3660; //// or set it zero (0)

2)和这个???

3) 假设您的数据库服务器和执行点不同,您的互联网/内联网连接是否正常?
4) 检查 VPN 连接(如果使用)

从 SSMS 执行查询并保存执行计划。然后运行应用程序并让 SQL 事件探查器捕获跟踪,然后从探查器保存执行计划,如此链接中所述。

比较两个执行计划以找出执行的实际差异。

检查参数探查。如果问题仍然存在,请确保数据库统计信息已更新,有时这可能是删除并创建过程后的问题。

我认为问题是将参数从应用程序发送到存储过程。再试一次,但这次使用 SQL Server 事件探查器来跟踪查询执行。您可以在 SQL Server 事件探查器中使用文本数据列值,并再次运行实际执行的查询以查找真正的问题。

相关内容

  • 没有找到相关文章

最新更新