Kako stvoriti pohranjene procedure u SQL-u?



Ovaj članak o procedurama u SQL-u pomoći će vam da razumijete što su postupci i kako povećavaju performanse baze podataka kada se implementiraju.

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.

SQL postupak - Postupci u SQL - Edureka



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.