Postupci su potprogrami koji se mogu kreirati i spremiti u kao objekti baze podataka. Baš kao što možete na drugim jezicima, možete stvoriti i ispustiti postupke SQL također. U ovom članku istražimo postupke u SQL-u sa sintaksom i primjerima.
Teme o kojima se raspravlja u članku su:
Što je postupak u SQL-u?
Postupak u (često se naziva pohranjenim postupkom),je višekratna jedinica koja obuhvaća specifičnu poslovnu logiku aplikacije. SQL postupak je skupina SQL izraza i logike, sastavljeni i pohranjeni zajedno za obavljanje određenog zadatka.
U nastavku su navedene ključne značajke SQL procedura:
- Jednostavno za primjenu jer koriste vrlo jednostavnojezik visoke razine, jako tipkan
- Podržava tri vrste parametara, naime,ulazni, izlazni i ulazno-izlazni parametri.
- Pouzdaniji od ekvivalentavanjski postupci.
- SQL postupci promiču ponovnu upotrebljivost i održivost.
- Podržava jednostavan, ali moćan model stanja i upravljanja pogreškama.
- Vratite vrijednost statusa pozivajućoj proceduri ili paketu kako biste označili uspjeh ili neuspjeh i razlog neuspjeha.
Sad kad znate što su postupci i zašto su potrebni, razgovarajmo o sintaksi i primjeru postupka u SQL-u.
Sintaksa postupaka u SQL-u
Sljedeće ilustrira osnovnu sintaksu stvaranja procedure u SQL-u:
STVORI [ILI ZAMIJENI] POSTUPAK ime_procedura [(naziv_parametara [IN | OUT | IN OUT] tip [])] JE POČETAK [section_section] izvršni_odjeljak // SQL izraz korišten u pohranjenoj proceduri END GO
Terminologije sintakse
Parametar
što su filtri konteksta u tablici
Parametar je varijabla koja sadrži vrijednost bilo kojevaljani SQL tip podataka putem kojeg podprogram može razmjenjivati vrijednosti s glavnim kodom. Drugim riječima, strarametri se koriste za prosljeđivanje vrijednosti proceduri. Postoje 3 različite vrste parametara, a to su:
- U : Tnjegov je zadani parametar, koji uvijek prima vrijednosti iz poziva programa. To je varijabla samo za čitanje unutar potprograma i njezina se vrijednost ne može mijenjati unutar potprograma.
- VAN: to jekoristi se za dobivanje rezultata iz potprograma.
- IZLAZNO: Ovajparametar se koristi i za davanje ulaznih podataka i za dobivanje rezultata iz potprograma.
Ostale terminologije
- postupak-naziv navodi naziv postupka. Trebao bi biti jedinstven.
- Opcija [OR REPLACE] omogućuje izmjenu postojećeg postupka.
- JE | KAO klauzula, postavili sukontekst za izvršavanje pohranjene procedure.Razlika je u tome što se ključna riječ 'IS' koristi kada je postupak ugniježđen u neke druge blokove, a ako je postupak samostalni, tada se koristi 'AS'.
- Code_Block deklarira proceduralne izjave koje obrađuju svu obradu unutar pohranjene procedure. Sadržaj code_blocka ovisi o pravilima i proceduralnom jeziku koji koristi baza podataka .
Postupak u SQL-u: Primjeri
programiranje socket klijentskog poslužitelja u javi
Primjer1
Sljedeći primjer stvara jednostavan postupak koji prikazuje poruku dobrodošlice na ekranu kada se izvrši. Tada će postupak biti:
IZRADI ILI ZAMIJENITE POSTUPAK welcome_msg (para1_name IN VARCHAR2) POČINJE dbms_output.put_line ('Hello World!' || para1_name) END /
Izvršite pohranjeni postupak. Samostalni postupak može se nazvati na dva načina & minus
- Koristiti IZVRŠITI ključna riječ
- Pozivanje imena procedure iz SQL bloka
Gornji postupak se može nazvati pomoću ključne riječi Execute kako slijedi:
EXEC welcome_msg (‘Dobrodošli u Edureku!’)
Izlaz
Pozdrav svijete! Dobrodošli u Edureku
Postupak se izvršava, a poruka se ispisuje kao „Hello World! Dobrodošli u Edureku ”.
Primjer2
Pretpostavimo da imate tablicu s pojedinostima o Emplyoeeu, poput ID-a zaposlenika, imena, prezimena i detalja o odjelu.
kako pronaći najveći broj u nizu java
Ovaj primjer stvara SQL proceduru koja će vratiti ime zaposlenika kada Id zaposlenika daje se kao ulazni parametar pohranjene procedure. Tada će postupak biti:
Stvori PROCEDURU GetStudentName (@employeeID INT, --Ulazni parametar, zaposlenikID zaposlenika @employeName VARCHAR (50) IZLAZ - Izlazni parametar, Ime zaposlenika KAKO POČINI ODABERI @ zaposlenoime = Ime + '' + Prezime IZ Employee_Table WHERE EmployeId = @ zaposlenikaID KRAJ
Koraci za izvršenje:
- Deklarirajte @employeName kao nvarchar (50)
- EXEC GetStudentName 01, izlaz @employeName
- odaberite @employeName
Gornji postupak davanja ID-a zaposlenika kao unosa vraća ime tog zaposlenika. Pretpostavimo ako imamo izlazni parametar then, prvo trebamo deklarirati varijablu za prikupljanje izlaznih vrijednosti.Pogledajmo sada prednosti postupka u SQL-u.
Prednosti postupaka u SQL-u
Glavna svrha pohranjenih procedura u SQL-u je izravno skrivanje SQL upiti iz koda i poboljšati izvedbu operacija baze podataka, poput odabira, ažuriranja i brisanja podataka. Ostale prednosti postupka u SQL-u su:
- Smanjuje količinu informacija poslanih na poslužitelj baze podataka. To može postati važnija korist kada je propusnost mreže manja.
- Omogućuje ponovnu upotrebu koda
- Pojačava sigurnost jer korisniku možete odobriti dopuštenje za izvršavanje pohranjene procedure umjesto davanja dozvole za tablice korištene u pohranjenoj proceduri.
- Podržati pozive ugniježđenih procedura za druge SQL procedure ili postupke implementirane na drugim jezicima.
Da zaključimo, procedure u SQL-u (pohranjene procedure)ne samo da povećava mogućnost ponovne upotrebe koda, već povećava i performanse baze podataka. Kako? Smanjivanjem prometa na mreži smanjenjem količine informacija poslanih preko mreže. Ovim smo došli do kraja ovog članka.
Ako želite saznati više o MySQL i upoznajte ovu relacijsku bazu podataka otvorenog koda, a zatim pogledajte našu koja dolazi s treningom uživo pod vodstvom instruktora i iskustvom u stvarnom životu. Ovaj trening pomoći će vam da dublje razumijete MySQL i postignete majstorstvo u vezi s tom temom.
Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ovog članka „Postupci u SQL-u, pa ćemo vam se javiti.