Kako ustvariti shranjene postopke v SQL?



Ta članek o postopkih v SQL vam bo pomagal razumeti, kaj so postopki in kako povečajo zmogljivost baze podatkov, ko se izvajajo.

Postopki so podprogrami, ki jih je mogoče ustvariti in shraniti v kot predmeti baze podatkov. Tako kot lahko v drugih jezikih, lahko ustvarite in spustite postopke SQL prav tako. V tem članku raziščimo postopke v SQL s sintakso in primeri.

Teme, obravnavane v članku, so:





Kaj je postopek v SQL?

Postopek v (pogosto imenovan shranjeni postopek),je enota za večkratno uporabo, ki zajema posebno poslovno logiko aplikacije. Postopek SQL je skupina stavkov in logike SQL, ki so zbrani in shranjeni za izvajanje določene naloge.

Postopek SQL - Postopki v SQL - Edureka



Spodaj so navedene ključne značilnosti postopkov SQL:

  • Preprosto za izvedbo, ker uporabljajo zelo preprostovisoko raven, močno tipkan jezik
  • Podpira tri vrste parametrov, in sicervhodni, izhodni in vhodno-izhodni parametri.
  • Bolj zanesljiv kot enakovredenzunanji postopki.
  • Postopki SQL spodbujajo večkratno uporabo in vzdrževanje.
  • Podpira preprost, a zmogljiv model stanja in obdelave napak.
  • Vrnite vrednost stanja klicni proceduri ali paketu, da označite uspeh ali neuspeh in razlog za neuspeh.

Zdaj, ko veste, kaj so postopki in zakaj so potrebni, se pogovorimo o sintaksi in primeru postopka v SQL.

Sintaksa postopkov v SQL

V nadaljevanju je prikazana osnovna sintaksa ustvarjanja postopka v SQL:



USTVARI [ALI NADOMESTI] POSTOPEK ime_procedura [(ime_parametra [IN | OUT | IN OUT] vrsta [])] JE ZAČETEK [odsek_deklaracije] izvršljiv_razdelek // Stavek SQL, uporabljen v shranjeni proceduri END GO

Sintaksa Terminologije

Parameter

Parameter je spremenljivka, ki vsebuje vrednost katerega koliveljaven podatkovni tip SQL, prek katerega lahko podprogram izmenjuje vrednosti z glavno kodo. Z drugimi besedami, strarametri se uporabljajo za posredovanje vrednosti postopku. Obstajajo 3 različne vrste parametrov, in sicer:

  • IN : Tnjegov je privzeti parameter, ki vedno prejme vrednosti iz klicnega programa. Gre za spremenljivko, ki je samo za branje znotraj podprogramov in je znotraj podprograma ni mogoče spremeniti.
  • ZUNAJ: jese uporablja za pridobivanje izhodnih podatkov iz podprogramov.
  • IZHOD: Toparameter se uporablja tako za podajanje vhodnih podatkov kot za pridobivanje izhodnih podatkov iz podprogramov.

Druge terminologije

  • ime-postopka določa ime postopka. Moral bi biti unikaten.
  • Možnost [OR REPLACE] omogoča spreminjanje obstoječega postopka.
  • JE | Klavzula AS določajokontekst za izvedbo shranjene procedure.Razlika je v tem, da se ključna beseda „IS“ uporablja, kadar je postopek ugnezden v druge bloke in če je postopek samostojen, se uporabi „AS“.
  • Code_Block izjavlja postopkovne stavke, ki obravnavajo vso obdelavo znotraj shranjene procedure. Vsebina bloka code_block je odvisna od pravil in postopkovnega jezika, ki ga uporablja zbirke podatkov .

Postopek v SQL: Primeri

Primer1

Naslednji primer ustvari preprost postopek, ki po izvedbi prikaže pozdravno sporočilo na zaslonu. Nato bo postopek:

USTVARI ALI NADOMESTI POSTOPEK welcome_msg (para1_name IN VARCHAR2) SE ZAČNE dbms_output.put_line ('Hello World!' || para1_name) END /

Izvedite shranjeni postopek. Samostojni postopek lahko pokličete na dva načina & minus

  • Uporabljati IZVRŠI ključna beseda
  • Klicanje imena postopka iz bloka SQL

Zgornji postopek lahko pokličete s pomočjo ključne besede Execute, kot sledi:

EXEC welcome_msg (‘Dobrodošli v Edureki!’)

Izhod

Pozdravljen, svet! Dobrodošli v Edureki

Postopek se izvede in sporočilo se natisne kot »Hello World! Dobrodošli v Edureki ”.

kaj je ključna napaka

Primer2

Recimo, da imate tabelo s podrobnostmi o Emplyoeeju, na primer EmployeId, Firstname, Lastname in DepartmentDetails.

Ta primer ustvari postopek SQL, ki bo vrnil ime zaposlenega, ko ID zaposlenega je podan kot vhodni parameter shranjene procedure. Nato bo postopek:

Ustvari PROCEDURE GetStudentName (@employeeID INT, --Input parameter, zaposleniID zaposlenega @employeName VARCHAR (50) OUT - Output parameter, workerName of worker AS BEGIN SELECT @ workerName = Firstname + '' + Lastname FROM Employee_Table WHERE EmployeId = @ workerID KONEC

Koraki za izvedbo:

  • Prijavi @employeName kot nvarchar (50)
  • EXEC GetStudentName 01, izhod @employeName
  • izberite @employeName

Zgornji postopek za dajanje ID-ja zaposlenega kot vnosa vrne ime tega zaposlenega. Recimo, če imamo izhodni parameter tkonec koncev moramo najprej spremenljivko razglasiti za zbiranje izhodnih vrednosti.Zdaj pa si oglejmo prednosti postopka v SQL.

Prednosti postopkov v SQL

Glavni namen shranjenih postopkov v SQL je skriti neposredno Poizvedbe SQL iz kode in izboljšati delovanje operacij zbirke podatkov, kot so izbiranje, posodabljanje in brisanje podatkov. Druge prednosti postopka v SQL so:

  • Zmanjša količino informacij, poslanih strežniku baze podatkov. Pomembnejša korist lahko postane, ko je pasovna širina omrežja manjša.
  • Omogoča ponovno uporabo kode
  • Izboljša varnost, saj lahko uporabniku daste dovoljenje za izvajanje shranjenega postopka, namesto da bi dali dovoljenje za tabele, uporabljene v shranjenem postopku.
  • Podpira klice ugnezdenih postopkov v druge postopke SQL ali postopke, izvedene v drugih jezikih.

Za konec, postopki v SQL (shranjene procedure)ne le povečajo možnost ponovne uporabe kode, temveč tudi povečajo zmogljivost baze podatkov. Kako? Z zmanjšanjem prometa v omrežju z zmanjšanjem količine informacij, poslanih po omrežju. S tem smo prišli do konca tega članka.

Če želite izvedeti več o MySQL in spoznajte to odprtokodno relacijsko bazo podatkov, nato si oglejte našo ki prihaja z usposabljanjem pod vodstvom inštruktorjev v živo in izkušnjami iz resničnih projektov. Ta trening vam bo pomagal poglobljeno razumeti MySQL in vam pomagal doseči obvladovanje zadeve.

Imate vprašanje za nas? Prosimo, omenite ga v oddelku za komentarje tega članka o 'Postopkih v SQL' in se bomo oglasili.