Por que os procedimentos armazenados precisam ser recompilados?

Por que os procedimentos armazenados precisam ser recompilados?
Por que os procedimentos armazenados precisam ser recompilados?
Anonim

Recomendações. Quando um procedimento é compilado ou recompilado pela primeira vez, o plano de consulta do procedimento é otimizado para o estado atual do banco de dados e seus objetos. … Outra razão para forçar a recompilação de um procedimento é para neutralizar o comportamento de "sniffing de parâmetros" da compilação do procedimento.

Os procedimentos armazenados devem ser evitados?

Stored procedures promovem más práticas de desenvolvimento, em particular eles exigem que você viole DRY (Don't Repeat Yourself), já que você precisa digitar a lista de campos em seu tabela de banco de dados meia dúzia de vezes ou mais, pelo menos. Esta é uma grande dor se você precisar adicionar uma única coluna à sua tabela de banco de dados.

O que é Sp_recompile?

sp_recompile procura um objeto apenas no banco de dados atual. As consultas usadas por procedimentos armazenados, ou gatilhos, e funções definidas pelo usuário são otimizadas apenas quando são compiladas. … O SQL Server recompila automaticamente procedimentos armazenados, gatilhos e funções definidas pelo usuário quando é vantajoso fazer isso.

O que a recompilação faz no SQL?

RECOMPILE – especifica que após a execução da consulta, seu plano de execução da consulta armazenado no cache é removido do cache. Quando a mesma consulta for executada novamente, não haverá plano existente no cache, então a consulta terá que ser recompilada.

Os procedimentos armazenados são eficientes?

Isso inclui coisas como espaço em branco e distinção entre maiúsculas e minúsculas. É muito menos provável que uma consulta dentro de um procedimento armazenado seja alterada em comparação com uma consulta incorporada no código. … Por causa disso, o procedimento armazenado pode de fato estar executando mais rápido porque foi capaz de reutilizar um plano em cache.

Recomendado: