Procedūras ir apakšprogrammas, kuras var izveidot un saglabāt kā datu bāzes objekti. Tāpat kā jūs varat citās valodās, varat izveidot un nomest procedūras SQL arī. Šajā rakstā izpētīsim procedūras SQL, izmantojot sintaksi un piemērus.
Rakstā apskatītās tēmas ir:
Kas ir procedūra SQL?
Procedūra (bieži dēvē par uzglabātu procedūru),ir atkārtoti lietojama vienība, kas ietver konkrētu lietojumprogrammas biznesa loģiku. SQL procedūra ir SQL priekšrakstu un loģikas grupa, kas apkopota un saglabāta kopā, lai veiktu noteiktu uzdevumu.
Tālāk ir uzskaitītas galvenās SQL procedūru iezīmes:
- Viegli ieviest, jo viņi izmanto ļoti vienkāršuaugsta līmeņa, stingri rakstīta valoda
- Atbalsta trīs veidu parametrus, proti,ievades, izvades un ievades-izvades parametri.
- Uzticamāks nekā līdzvērtīgsārējās procedūras.
- SQL procedūras veicina atkārtotu lietošanu un uzturēšanu.
- Atbalsta vienkāršu, bet jaudīgu stāvokļa un kļūdu apstrādes modeli.
- Atgrieziet statusa vērtību izsaukšanas procedūrai vai grupai, lai norādītu veiksmi vai neveiksmi un neveiksmes iemeslu.
Tagad, kad jūs zināt, kādas ir procedūras un kāpēc tās ir vajadzīgas, apspriedīsim SQL sintaksi un piemēru.
Procedūru sintakse SQL
Šis ilustrē procedūras sintakses pamata sintaksi SQL:
IZVEIDOT [VAI NOMAINĀT] PROCESU procedūras_nosaukums [(parametra_nosaukums [IN | OUT | IN OUT] tips [])] IS BEGIN [deklarācijas_nodaļa] izpildāmā_nodaļa // SQL priekšraksts, kas izmantots saglabātajā procedūrā END GO
Sintakses terminoloģijas
Parametrs
Parametrs ir mainīgais, kuram ir jebkura vērtībaderīgs SQL datu tips, caur kuru apakšprogramma var apmainīt vērtības ar galveno kodu. Citiem vārdiem sakot, lpparametri tiek izmantoti, lai nodotu vērtības procedūrai. Ir 3 dažādi parametru veidi, kas ir šādi:
- IN : Tviņa ir noklusējuma parametrs, kas vienmēr saņem vērtības no izsaucošās programmas. Tas ir tikai lasāms mainīgais apakšprogrammu iekšpusē, un tā vērtību nevar mainīt apakšprogrammas iekšienē.
- OUT: Tas irizmanto, lai iegūtu izejas no apakšprogrammām.
- IEKŠĀ ĀRĀ: Šisparametrs tiek izmantots gan ievadei, gan izejas iegūšanai no apakšprogrammām.
Citas terminoloģijas
- procedūras nosaukums norāda procedūras nosaukumu. Tam vajadzētu būt unikālam.
- Opcija [VAI NOMAINĪT] ļauj mainīt esošo procedūru.
- IS | AS klauzula, viņi nosakakontekstā, lai izpildītu saglabāto procedūru.Atšķirība ir tāda, ka atslēgvārds “IS” tiek izmantots, kad procedūra ir ievietota citos blokos un ja procedūra ir atsevišķa, tad tiek izmantota “AS”.
- Code_Block deklarē procesuālos paziņojumus, kas apstrādā visu apstrādi glabātajā procedūrā. Code_block saturs ir atkarīgs no noteikumiem un procesuālās valodas, ko lieto datu bāzē .
Procedūra SQL: piemēri
1. piemērs
Šis piemērs izveido vienkāršu procedūru, kas izpildes laikā ekrānā parāda sveiciena ziņojumu. Tad procedūra būs:
IZVEIDOT VAI NOMAINĪT PROCEDŪRU welcome_msg (para1_name IN VARCHAR2) IR SĀKUMS dbms_output.put_line (‘Hello World!’ || para1_name) END /
Izpildiet saglabāto procedūru. Atsevišķu procedūru var izsaukt divos veidos & mīnus
- Izmantojot IZPILDĪT atslēgvārdu
- Procedūras nosaukuma izsaukšana no SQL bloka
Iepriekš minēto procedūru var izsaukt, izmantojot Execute keyword šādi:
EXEC welcome_msg (‘Laipni lūdzam Edureka!’)
Rezultāts
Sveika pasaule! Laipni lūdzam Edureka
Procedūra tiek izpildīta, un ziņojums tiek izdrukāts kā “Sveika pasaule! Laipni lūdzam Edurekā ”.
2. piemērs
Pieņemsim, ka jums ir tabula ar Emplyoee detaļām, piemēram, EmployeId, Firstname, Uzvārds un DepartmentDetails.
Šis piemērs izveido SQL procedūru, kas atgriezīs darbinieka vārdu, kad EmployeId tiek norādīts kā saglabātā procedūras ievades parametrs. Tad procedūra būs:
Izveidot PROCEDŪRU GetStudentName (@employeeID INT, --Input parametrs, darbinieka ID darbiniekam @employeName VARCHAR (50) OUT - Output parametrs, darbinieka darbinieka vārds AS BEGIN SELECT @ployeName = Vārds + '' + Uzvārds FROM Employee_Table WHERE EmployeId = @ployeID BEIGT
Izpildes soļi:
virtuļu diagramma pret sektoru diagrammu
- Paziņot @employeName par nvarchar (50)
- EXEC GetStudentName 01, @employeName izeja
- atlasiet @employeName
Iepriekš minētā procedūra, kā darbinieka ID norādīt kā ievadi, atgriež konkrētā darbinieka vārdu. Pieņemsim, ja mums ir izejas parametrs tVispirms mums ir jādeklarē mainīgais lielums, lai savāktu izejas vērtības.Tagad pārbaudīsim procedūras SQL priekšrocības.
Procedūru priekšrocības SQL
SQL uzglabāto procedūru galvenais mērķis ir slēpt tiešo SQL vaicājumi un uzlabot datu bāzes darbību, piemēram, datu atlasīšanu, atjaunināšanu un dzēšanu, veiktspēju. Citas SQL procedūras priekšrocības ir:
- Samazina datu bāzes serverim nosūtītās informācijas daudzumu. Tas var kļūt par svarīgāku ieguvumu, ja tīkla joslas platums ir mazāks.
- Ļauj koda atkārtotu izmantošanu
- Uzlabo drošību, jo jūs varat piešķirt atļauju lietotājam glabātās procedūras izpildei, nevis piešķirt atļauju glabāšanas procedūrā izmantotajām tabulām.
- Atbalsta ligzdoto procedūru izsaukumus uz citām SQL procedūrām vai procedūrām, kas ieviestas citās valodās.
Noslēgumā procedūras SQL (uzglabātās procedūras)ne tikai palielina koda atkārtotas izmantošanas iespēju, bet arī palielina datu bāzes veiktspēju. Kā? Samazinot tīkla trafiku, samazinot tīklā nosūtītās informācijas apjomu. Ar to mēs esam nonākuši šī raksta beigās.
Ja vēlaties uzzināt vairāk par MySQL un iepazīstiet šo atvērtā pirmkoda relāciju datu bāzi, pēc tam pārbaudiet mūsu kas nāk ar instruktoru vadītu tiešraides apmācību un reālās dzīves projektu pieredzi. Šīs apmācības palīdzēs padziļināti izprast MySQL un palīdzēs apgūt šo tēmu.
Vai mums ir jautājums? Lūdzu, pieminējiet to šī raksta “Procedūras SQL rakstā” komentāru sadaļā, un mēs ar jums sazināsimies.