首页 > 解决方案 > 在 SSMS 与应用程序服务器中创建 SQL Server 查询计划

问题描述

我有以下情况:

在数据库部署之后,我们有一个 .Net 应用程序服务器正在尝试执行存储过程。

应用程序的超时时间为 30 秒。当应用程序第一次尝试执行存储过程时,会尝试创建一个新的查询计划,但这需要超过 30 秒,并且应用程序有很多超时。我的经验是,如果存储过程在第一次运行时从 SSMS 手动运行(具有代表性的数据输入),大约需要 1-2 分钟,然后会生成一个计划,然后应用程序会顺利运行。

我与第三方公司合作,那里有一个 DBA,他声称以下内容:

"手动调用此存储过程将创建一个特定于所使用的连接属性 (SSMS) 的计划,当应用程序服务器调用该过程时,将不会使用生成的计划。 "

这个对吗?如果使用的查询计划链接到连接属性,这似乎是一个糟糕的设计?如果您在 SSMS 中手动运行存储过程与由应用程序执行存储过程,创建的查询计划有区别吗?

如果是这样,解决此问题的最佳方法是什么?增加超时是唯一的选择吗?

标签: sql-servertsql

解决方案


推荐阅读