Препоръки. Когато процедурата се компилира за първи път или се компилира повторно, планът на заявката на процедурата се оптимизира за текущото състояние на базата данни и нейните обекти. … Друга причина да се принуди процедурата да се компилира е за противодействие на поведението на "смъркане на параметри" при компилацията на процедурата.
Трябва ли да се избягват съхранените процедури?
Съхранени процедури насърчават лоши практики за разработка, по-специално те изискват от вас да нарушите DRY (Не се повтаряйте), тъй като трябва да въведете списъка с полета във вашия таблица с база данни поне половин дузина пъти или повече. Това е огромна болка, ако трябва да добавите една колона към вашата таблица на базата данни.
Какво е Sp_recompile?
sp_recompile търси обект само в текущата база данни. Заявките, използвани от съхранените процедури или тригери, и дефинираните от потребителя функции се оптимизират само когато са компилирани. … SQL Server автоматично прекомпилира съхранени процедури, тригери и дефинирани от потребителя функции, когато е изгодно да направи това.
Какво прави с прекомпилирането в SQL?
RECOMPILE – указва, че след като заявката бъде изпълнена, нейният план за изпълнение на заявката, съхранен в кеша, се премахва от кеша. Когато същата заявка се изпълни отново, няма да има съществуващ план в кеша, така че заявката ще трябва да бъде прекомпилирана.
Ефективни ли са съхранените процедури?
Това включва неща като бяло пространство и чувствителност към малки и големи букви. Много по-малко вероятно е заявка вътре в съхранена процедура да се промени в сравнение със заявка, която е вградена в код. … Поради това съхранената процедура всъщност може да се изпълнява по-бързо, защото е в състояние да използва повторно кеширан план.