Išsaugotos procedūros: kaip jūsų SQL funkcijos.
Išsaugota procedūra yra SQL sakinių paketas, sukurtas ir saugomas duomenų bazėje. Išsaugotą procedūrą galite naudoti vėl ir vėl.
Išsaugota procedūra gali priimti parametrus, vykdyti užklausą ir pateikti rezultatus. Daugelis vartotojų gali iškviesti išsaugotą procedūrą, o įvairios programos gali ją iškviesti su skirtingomis parametrų reikšmėmis.
Kokie yra saugomų procedūrų naudojimo pranašumai?
Be to, kad kelis vartotojus ir programas gali pakartotinai naudoti, saugoma procedūra turi ir kitų privalumų.
- Jį lengva modifikuoti. Jei reikia, galite pakeisti išsaugotą procedūrą ir šie naujinimai bus matomi visiems vartotojams. Be to, jums nereikia iš naujo įdiegti programos, kai keičiate išsaugotą procedūrą.
- Tai sumažina tinklo srautą, nes serveris tinklu perduoda tik procedūros pavadinimą, o ne visą užklausą.
- Tai pagerina duomenų bazės saugumą, nes vartotojai neturi tiesioginės prieigos prie lentelių. Norėdami atlikti pakeitimus, jie turi iškviesti išsaugotą procedūrą. Tai apsaugo nuo SQL injekcijos atakų, nes vartotojai negali tiesiogiai rašyti į pagrindines lenteles.
Duomenų bazės variklis kaip MySQL turi daug saugos funkcijų turėtumėte žinoti.
Saugomos procedūros kūrimo SQL serveryje sintaksė
Išsaugotos procedūros kūrimo sintaksė yra tokia:
KURTIPROCEDŪRA procedūros_pavadinimas
AS
sql_teiginys
EIK;
Vykdykite šią komandą, kad atliktumėte saugomą procedūrą.
EXEC procedūros_pavadinimas;
Paprastos saugomos procedūros SQL serveryje pavyzdys
Čia yra saugomos procedūros, kuri parenka visus straipsnius iš straipsnių duomenų bazės, pavyzdys.
KURTIPROCEDŪRA Visi_straipsniai
AS
PASIRINKTI * NUO Straipsnis
EIK;
Tai yra paprastas pavyzdys, bet jūs galite padaryti daug daugiau su saugomomis procedūromis, pvz., priimti parametrus ir atnaujinti įrašus.
Kaip sukurti saugomą procedūrą, kuri priima parametrus
Pavyzdžiui, pakeiskite paprastą saugomą procedūrą, kad priimtumėte skaičių kaip parametrą ir naudokite jį norėdami grąžinti įrašus, kurių peržiūrų skaičius didesnis nei skaičius.
KURTIPROCEDŪRA Populiarūs_straipsniai(@views tarpt)
AS
PASIRINKTI * NUO Straipsnis
WHERE peržiūrų_skaičius >= @Peržiūros_count
EIK;
Naudokite šią komandą, kad atliktumėte išsaugotą procedūrą su parametru.
EXEC populiarūs_straipsniai 300;
Procedūra grąžina straipsnius, kurių peržiūrų skaičius yra didesnis nei 300.
Prieš naudodami saugomas procedūras, pirmiausia išmokite SQL
Išsaugotos procedūros leidžia pakartotinai naudoti SQL sakinių grupę. Jie taip pat pagerina duomenų bazės saugumą, sumažina tinklo srautą ir yra lengvai modifikuojami.
Todėl svarbu sužinoti apie saugomas procedūras, tačiau pirmiausia turite gerai suprasti SQL.