Eu usei dois métodos para solucionar problemas de detecção de parâmetros no passado:
1) Use WITH RECOMPILE
2) Reatribua valores de parâmetros para variáveis locais e use-os em vez dos parâmetros
Pelo que entendi, o resultado final de ambos é o mesmo - um novo plano de execução otimizado para as consultas / parâmetros atuais é criado e usado.
Se isso for verdade, há alguma diferença entre esses dois métodos ou eles são essencialmente os mesmos? Um é preferível ao outro?
fonte