Recomendaciones. Cuando un procedimiento se compila por primera vez o se vuelve a compilar, el plan de consulta del procedimiento se optimiza para el estado actual de la base de datos y sus objetos. … Otra razón para forzar la recompilación de un procedimiento es para contrarrestar el comportamiento de "rastreo de parámetros" de la compilación del procedimiento.
¿Deberían evitarse los procedimientos almacenados?
Procedimientos almacenados Promueven malas prácticas de desarrollo, en particular requieren que viole DRY (Don't Repeat Yourself), ya que debe escribir la lista de campos en su tabla de base de datos media docena de veces o más por lo menos. Esto es un dolor enorme si necesita agregar una sola columna a la tabla de su base de datos.
¿Qué es Sp_recompile?
sp_recompile busca un objeto solo en la base de datos actual. Las consultas utilizadas por los procedimientos almacenados o desencadenadores y las funciones definidas por el usuario se optimizan solo cuando se compilan. … SQL Server vuelve a compilar automáticamente los procedimientos almacenados, los disparadores y las funciones definidas por el usuario cuando es ventajoso hacerlo.
¿Qué hace la recompilación en SQL?
RECOMPILE: especifica que después de ejecutar la consulta, su plan de ejecución de consulta almacenado en la memoria caché se elimina de la memoria caché. Cuando se vuelva a ejecutar la misma consulta, no habrá ningún plan existente en la memoria caché, por lo que será necesario volver a compilar la consulta.
¿Son eficientes los procedimientos almacenados?
Esto incluye cosas como espacios en blanco y distinción entre mayúsculas y minúsculas. Es mucho menos probable que una consulta dentro de un procedimiento almacenado cambie en comparación con una consulta incrustada en el código. … Debido a esto, el procedimiento almacenado puede, de hecho, ejecutarse más rápido porque pudo reutilizar un plan almacenado en caché.