Sql server SQL Server存储过程在SSMS中运行快,在应用程序中运行慢

Sql server SQL Server存储过程在SSMS中运行快,在应用程序中运行慢,sql-server,Sql Server,我有一个带SQL express DB的WinC窗体应用程序 我有一个表包含20列,2个缺少记录,该表有6个索引,1个是聚集索引,5个是非聚集索引 在5个索引中,3列为varchar数据类型,1列为bit,1列为数值数据类型 我的应用场景是 我们有2台应用程序和PC,两台PC都运行不同的应用程序并访问位于PC 1的单个数据库- 两个应用程序都在连续运行,并在数据库上点击更新记录,有时选择一些记录 我们不关心update语句,但每当应用程序点击select查询时,有时应用程序会比正常情况花费更多的

我有一个带SQL express DB的WinC窗体应用程序

我有一个表包含20列,2个缺少记录,该表有6个索引,1个是聚集索引,5个是非聚集索引

在5个索引中,3列为varchar数据类型,1列为bit,1列为数值数据类型

我的应用场景是

我们有2台应用程序和PC,两台PC都运行不同的应用程序并访问位于PC 1的单个数据库-

两个应用程序都在连续运行,并在数据库上点击更新记录,有时选择一些记录

我们不关心update语句,但每当应用程序点击select查询时,有时应用程序会比正常情况花费更多的时间,我非常关心select语句的结果。下面是从存储过程调用的查询

SELECT Count(PrimaryKey) as CNT From Tabel where Col1 ="AAAAAAAA" 
and (Col2 =0 OR Col2 is null) and Col3 =0 
大多数情况下,SP给定的结果只需1或2毫秒,但有时需要45,6090189260 e.t.c毫秒,这对我的应用程序不有用

我在通过局域网远程访问DB的第二台PC上面临这个问题

执行时间已由我的应用程序维护的应用程序日志和SQL Profiler确认

我的预期结果是1到30毫秒,不超过30毫秒

请在这方面帮助我,以获得一致的时间结果

事先非常感谢你

谢谢

萨加尔·凯勒卡

通常,它通常与设置选项相关

SSMS有自己的设置值,您的应用程序可能缺少这些设置值


只需在SSMS和你的应用程序中运行DBCC USEROPTIONS并比较它们

请google for SQL Server存储过程在SSMS中运行快,在应用程序中运行慢。这在很多地方都有很好的解释。Dear Selvin,我已经检查了stack overflow和其他论坛上发布的所有选项,但没有解决我的问题,在这三个主题中有大量的资源,这个问题目前被标记为重复的。如果您觉得这些或其他问题都不能回答您的问题,请发布新问题。但是,当您这样做时,请确保包括您尝试过的所有内容,如您更改的SQL/asp.net代码、您调整的设置等,这些在上述问题中概述;这包括链接文章中的部分,如作者的文章,这是一篇关于行为的非常详细的文章。亲爱的Larnu,我已经尝试了您和其他人发布的大多数选项,但没有解决我的问题,关于Erland Sommarsko post,提到的问题是在几秒钟内取得结果,我期望以毫秒为单位,但不一致。我也解释了我的整个申请和执行情况。亲爱的Alexander,我已经设置了ANSI_null、QUOTED_IDENTIFIER、NOCOUNT和arithabort,请建议我是否需要设置更多,请注意:-根据其他帖子的建议,我在db上的每100或200次点击中都会遇到一次或两次问题,而且我预期的结果是毫秒。