Zakaj je treba shranjene procedure ponovno prevesti?

Kazalo:

Zakaj je treba shranjene procedure ponovno prevesti?
Zakaj je treba shranjene procedure ponovno prevesti?
Anonim

Priporočila. Ko je procedura prvič prevedena ali ponovno prevedena, je načrt poizvedbe procedure optimiziran za trenutno stanje baze podatkov in njenih objektov. … Drug razlog za prisilno prevajanje postopka je, da preprečimo vedenje "vohanja parametrov" pri prevajanju procedure.

Ali se je treba izogibati shranjenim proceduram?

Shranjeni postopki spodbujajo slabe razvojne prakse, zlasti zahtevajo, da kršite DRY (Ne ponavljajte se), saj morate vnesti seznam polj v tabelo baze podatkov vsaj pol ducata ali več. To je velika bolečina, če morate v tabelo baze podatkov dodati en stolpec.

Kaj je Sp_recompile?

sp_recompile išče objekt samo v trenutni bazi podatkov. Poizvedbe, ki jih uporabljajo shranjene procedure ali sprožilci, in uporabniško definirane funkcije so optimizirane samo, ko so prevedene. … SQL Server samodejno ponovno prevede shranjene procedure, sprožilce in uporabniško določene funkcije, kadar je to koristno.

Kaj naredi s ponovnim prevajanjem v SQL?

RECOMPILE – določa, da se po izvedbi poizvedbe njen načrt izvedbe poizvedbe, shranjen v predpomnilniku, odstrani iz predpomnilnika. Ko se ista poizvedba znova izvede, v predpomnilniku ne bo nobenega obstoječega načrta, zato bo treba poizvedbo znova prevesti.

Ali so shranjeni postopki učinkoviti?

To vključuje stvari, kot sta presledek in občutljivost velikih in malih črk. Veliko manj verjetno je, da se bo poizvedba znotraj shranjene procedure spremenila v primerjavi s poizvedbo, ki je vdelana v kodo. … Zaradi tega se shranjena procedura morda dejansko izvaja hitreje, ker je lahko ponovno uporabila predpomnjeni načrt.

Priporočena: