Тъй като изглеждаше, че коментарът ми дава правилния отговор, реших да го преместя в пълен отговор за бъдещите в духа на stackoverflow.
Проблемът ви изглежда е причинен от параметър на SQL Server .За да го предотвратите, просто присвоете стойностите на вашите входящи параметри към други променливи, декларирани точно в горната част на вашия SP.
Вижте тази хубава статия за това
Пример:
CREATE PROCEDURE dbo.MyProcedure
(
@Param1 INT
)
AS
declare @MyParam1 INT
set @MyParam1 = @Param1
SELECT * FROM dbo.MyTable WHERE ColumnName = @MyParam1
GO
Копирах тази информация от eggheadcafe.com .
Редактиране:Според коментара на Johann Strydom, ето друга опция:Оптимизиране на управлявани от параметри заявки с SQL Server OPTIMIZE FOR Hint .