Бих подозирал надушване на параметри.
Кешираният план за изпълнение, използван за връзката на вашето приложение, вероятно няма да може да се използва от вашата SSMS връзка поради различен set
опции, така че ще генерира нов различен план.
Можете да извлечете кешираните планове за съхранената процедура, като използвате заявката по-долу. След това сравнете, за да видите дали са различни (напр. дали бавният прави търсене в индекс и търсене на отметки на място, където другият прави сканиране?)
Use YourDatabase;
SELECT *
FROM sys.dm_exec_cached_plans
CROSS APPLY sys.dm_exec_sql_text(plan_handle)
CROSS APPLY sys.dm_exec_query_plan(plan_handle)
cross APPLY sys.dm_exec_plan_attributes(plan_handle) AS epa
where sys.dm_exec_sql_text.OBJECTID=object_id('YourProcName')
and attribute='set_options'