Hvorfor må lagrede prosedyrer kompileres på nytt?

Innholdsfortegnelse:

Hvorfor må lagrede prosedyrer kompileres på nytt?
Hvorfor må lagrede prosedyrer kompileres på nytt?
Anonim

Anbefalinger. Når en prosedyre kompileres for første gang eller kompileres på nytt, optimaliseres prosedyrens spørringsplan for den nåværende tilstanden til databasen og dens objekter. … En annen grunn til å tvinge en prosedyre til å rekompilere er for å motvirke "parametersniffing"-oppførselen til prosedyrekompilering.

Bør lagrede prosedyrer unngås?

Lagrede prosedyrer fremme dårlig utviklingspraksis, spesielt krever de at du bryter DRY (Ikke gjenta deg selv), siden du må skrive ut listen over felt i databasetabell et halvt dusin ganger eller mer minst. Dette er en enorm smerte hvis du trenger å legge til en enkelt kolonne i databasetabellen.

Hva er Sp_recompile?

sp_recompile ser kun etter et objekt i gjeldende database. Spørringene som brukes av lagrede prosedyrer, eller triggere, og brukerdefinerte funksjoner optimaliseres bare når de er kompilert. … SQL Server rekompilerer automatisk lagrede prosedyrer, utløsere og brukerdefinerte funksjoner når det er fordelaktig å gjøre dette.

Hva gjør rekompilering i SQL?

RECOMPILE – spesifiserer at etter at spørringen er utført, fjernes dens utførelsesplan for spørringen lagret i hurtigbufferen fra cachen. Når den samme spørringen utføres igjen, vil det ikke være noen eksisterende plan i hurtigbufferen, så spørringen må kompileres på nytt.

Er lagrede prosedyrer effektive?

Dette inkluderer ting som mellomrom og følsomhet for store og små bokstaver. Det er mye mindre sannsynlig at en spørring inne i en lagret prosedyre vil endre seg sammenlignet med en spørring som er innebygd i kode. … På grunn av dette kan den lagrede prosedyren faktisk kjøres raskere fordi den var i stand til å gjenbruke en bufret plan.

Anbefalt:

Interessante artikler
Er dødtrøtt ett ord?
Les mer

Er dødtrøtt ett ord?

Helt utslitt eller sliten. Jeg var dødstrøtt etter å ha jobbet mitt tredje 12-timersskift på rad. Hvordan staver du trøtt og søvnig? utmattet , som ved anstrengelse; trøtt eller søvnig : en trøtt løper. sliten eller lei (vanligvis etterfulgt av av):

Skal jeg tilgi bestevennen min for å ha forrådt meg?
Les mer

Skal jeg tilgi bestevennen min for å ha forrådt meg?

Det er mange omstendigheter som kan betraktes som svik, fra en venn som snur seg mot deg når du trenger det, til en romantisk partner som driver en affære bak ryggen din. Til slutt, for det beste for din egen mentale og følelsesmessige helse, bør du tilgi personen som forrådte deg.

Når kartesisk produkt dannes?
Les mer

Når kartesisk produkt dannes?

La oss lære det. Et kartesisk produkt av to sett X og Y, betegnet X × Y, er settet av alle ordnede par der x er i X og y er i Y. Når det gjelder SQL, er det kartesiske produktet en ny tabell som består av to tabeller. Når et kartesisk produkt dannes, hvilke av følgende betingelser er tilstede?