SQL Serverin tallennetut menettelyt

Tallennetut menettelyt tarjoavat tehokkaita ja turvallisia etuja

Microsoft SQL Server tarjoaa tallennetun menettelymekanismin tietokannan kehittämisprosessin yksinkertaistamiseksi ryhmittelemällä Transact-SQL-käskyt hallittaviksi lohkoiksi. Useimmat SQL Server -kehittäjät arvostavat tallennettuja menettelytapoja, jotka löytävät tehokkuutensa ja turvallisuutensa, jotka he ansaitsevat.

Edut tallennettujen menettelyjen käyttämisestä

Miksi kehittäjä käyttää tallennettuja menettelyjä?

Tässä ovat tämän teknologian keskeiset hyödyt:

Tallennetut menettelyt ovat samanlaisia ​​kuin käyttäjäkohtaiset toiminnot, mutta hienovaraisia ​​eroja on.

Rakenne

Tallennetut menettelyt ovat samanlaisia ​​kuin muissa ohjelmointikieleissä olevat rakenteet.

He hyväksyvät datan syöttöparametrien muodossa, jotka määritetään toteutusaikana. Nämä syöttöparametrit (jos ne on toteutettu) hyödynnetään sellaisten lausumien toteutuksessa, jotka tuottavat jonkin tuloksen. Tämä tulos palautetaan kutsuvalle ympäristölle käyttämällä rekisteriä, tuotosparametreja ja palautuskoodia.

Tämä saattaa kuulostaa suupala, mutta huomaat, että tallennetut menettelyt ovat varsin yksinkertaisia.

esimerkki

Katsotaanpa käytännön esimerkki, joka liittyy tämän sivun alaosassa näkyvään taulukkoon nimeltä mainosjakauma. Nämä tiedot päivitetään reaaliaikaisesti, ja varastonhoitaja tarkkailee jatkuvasti varastoissaan varastoituja tuotteita, jotka ovat käytettävissä toimitettavaksi. Aiemmin jokainen johtaja suoritti kyselyjä, jotka olivat samankaltaisia ​​kuin seuraavat:

SELECT tuote, määrä
FROM Inventory
WHERE Warehouse = 'FL'

Tämä johti tehottomaan suorituskykyyn SQL Serverissa. Aina kun varastopäällikkö suoritti kyselyn, tietokantapalvelin joutui kääntämään kyselyn uudelleen ja suorittamalla se tyhjästä. Se edellytti myös varastojohtajan tietävän SQL: stä ja asianmukaisista käyttöoikeuksista pöytätiedon käyttämiseen.

Sen sijaan prosessia voidaan yksinkertaistaa tallennetun menettelyn avulla. Tässä on menettelyn koodi nimeltä sp_GetInventory, joka noutaa tietyn varaston inventointitasot.

LUOTTAA MENETTELY sp_GetInventory
@location varchar (10)
KUTEN
SELECT tuote, määrä
FROM Inventory
WHERE Warehouse = @paikka

Floridan varastonhoitaja voi sitten käyttää varastointitasoja antamalla komennon:

SUORITA sp_GetInventory 'FL'

New Yorkin varastonhoitaja voi käyttää samaa tallennettua menettelytapaa kyseisen alueen mainosjakauman käyttämiseen:

SUORITA sp_GetInventory "NY"

Hyvä esimerkki, tämä on yksinkertainen esimerkki, mutta abstraktin edut ovat nähtävissä täällä. Varastonhoitaja ei tarvitse ymmärtää SQL: n tai menettelyn sisäistä toimintaa. Suorituskyvyn näkökulmasta tallennettu menettely toimii ihmeinä. SQL Server luo toteutussuunnitelman kerran ja käyttää sitä uudestaan ​​kytkemällä sopivat parametrit suoritusaikaan.

Nyt kun olet oppinut tallennettujen menettelytapojen hyödyt, pääset sinne ja käytä niitä.

Kokeile muutamia esimerkkejä ja mittaa saavutettuja suorituskyvyn parannuksia - tulet hämmästymään!

Inventaatiotaulukko

ID Tuote Varasto Määrä
142 Vihreät pavut New York 100
214 herneet FL 200
825 Maissi New York 140
512 limapavut New York 180
491 tomaatit FL 80
379 Vesimeloni FL 85