Имах същия проблем като оригиналния плакат, но цитираният отговор не реши проблема за мен. Заявката все още работи много бавно от съхранена процедура.
Намерих друг отговор тук "Параметър Sniffing", Благодаря Omnibuzz. Свежда се до използването на "локални променливи" във вашите заявки за съхранени процедури, но прочетете оригинала за повече разбиране, това е страхотно писане. напр.
Бавен начин:
CREATE PROCEDURE GetOrderForCustomers(@CustID varchar(20))
AS
BEGIN
SELECT *
FROM orders
WHERE customerid = @CustID
END
Бърз начин:
CREATE PROCEDURE GetOrderForCustomersWithoutPS(@CustID varchar(20))
AS
BEGIN
DECLARE @LocCustID varchar(20)
SET @LocCustID = @CustID
SELECT *
FROM orders
WHERE customerid = @LocCustID
END
Надявам се това да помогне на някой друг, правейки това намали времето ми за изпълнение от 5+ минути на около 6-7 секунди.