使用SQL Server 2008,我有一個簡單的存儲過程,其內容是你是否總是期望參數嗅探引起的問題?
DELETE FROM [ABC].[dbo].[LookUpPermissions]
WHERE Code = @Code
在最近的代碼審查,DBA說我應該「增加參數嗅探」,我相信意味着我應該考慮參數嗅探。我從來沒有這樣做過,我沒有任何性能問題與查詢,所以我認爲這是沒有必要的。
雖然我認爲答案可能是用戶偏好,但是最好的做法是解釋參數嗅探?存儲過程是否需要在小數據集上調用,不常使用並且沒有性能問題?
編輯
這是僅適用於使用的參數WHERE子句,或例如,你可能需要在INSERT語句考慮到所有的參數?
[相關 - 如果你總是使用'OPTIMIZE FOR UNKNOWN'](http://stackoverflow.com/q/4376313/73226) – 2011-12-22 20:10:28