PL/SQL kilpos

Pl Sql Kilpos



Kilpos yra vienas iš pagrindinių programavimo elementų. Mes naudojame kilpas, kad sukurtume valdomus kodo blokus, kurie gali būti vykdomi kelis kartus, kai tam tikra sąlyga yra teisinga. Jie yra pagrindinis veiksnys automatizuojant pasikartojančias užduotis neperrašant kodo bloko kelis kartus.

Kaip ir visos pagrindinės programavimo kalbos, PL/SQL palaiko kilpas, kurios leidžia kartoti instrukcijų rinkinį, kol įvykdoma tam tikra sąlyga.

Šioje pamokoje išnagrinėsime LOOP sakinio naudojimą PL/SQL, kad pakartotinai būtų vykdomas kodo blokas.







Oracle Loops

PL/SQL kalba palaiko įvairias kilpų konstrukcijas, tokias kaip „for“ ciklas ir „while“ ciklas. Galime išreikšti bendrosios kilpos sintaksę „Oracle“, kaip parodyta taip:



<< etiketė >> KILPA
kilpa_teiginys;
END LOOP loop_label;

Jame yra raktinis žodis LOOP ir vykdomos ciklo turinys, taip pat yra raktinis žodis END LOOP.



LOOP blokas vykdo apibrėžtus veiksmus ir baigus grąžina valdiklį į viršutinės kilpos sąlygą. Paprastai tai įtraukiama į EXIT arba EXIT WHEN sakinį, kad būtų užbaigta ciklas įvykdžius tam tikrą sąlygą. Tai padeda išvengti begalinių kilpų.





„Oracle For Loop“ sintaksė:

Toliau pateikiama „for“ ciklo sintaksė PL/SQL:

PRADĖTI
FOR ciklo_kintamasis IN [apatinė_riba..viršutinė_riba] LOOP
-- kodas, kuris turi būti vykdomas cikle
END KIPA;
GALAS;

Loop_variable leidžia apibrėžti kilpą, kuri naudojama kilpai ir apatinei bei viršutinei riboms valdyti. Viršutinė ir apatinė ribos nurodo diapazono reikšmes, kuriose atliekamas kilpos įvertinimas.



Oracle While Loops

Taip pat galime apibrėžti „while“ kilpas PL / SQL, kaip parodyta tokia sintaksė:

PRADĖTI
WHILE būklė LOOP
-- kilpos veiksmas
END KIPA;
GALAS;

„While“ cikle ciklo veiksmas vykdomas pakartotinai, kol sąlyga yra teisinga.

Oracle Cursor for Loops

„Oracle“ taip pat palaiko „cursor for“ kilpas, kurios leidžia mums vykdyti instrukcijų rinkinį kiekvienai tam tikro rezultatų rinkinio eilutei. Sintaksė gali būti išreikšta taip:

PRADĖTI
FOR loop_kintamasis IN (SELECT stulpelis1, stulpelis2, ...
IŠ lentelės1, lentelės2, ...
WHERE sąlyga) LOOP
-- kilpos veiksmas
END KIPA;
GALAS;

„Oracle“ kilpų pavyzdys

Šie pavyzdžiai apima darbo su žymeklio kilpomis, while ir Oracle pagrindai.

Oracle For Loop pavyzdys:

Šiame pavyzdyje parodyta, kaip naudoti „for“ kilpą spausdinant skaičius nuo 1 iki 10.

PRADĖTI
FOR i IN 1..10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END KIPA;
GALAS;

Nors ciklo pavyzdys:

Panašų veiksmą galime atlikti naudodami while kilpą, kaip parodyta toliau:

PRADĖTI
DEKLARUOTI
i SKAIČIUS := 1;
PRADĖTI
KOL i <= 10 kilpa
DBMS_OUTPUT.PUT_LINE(i);
i := i + 1;
END KIPA;
GALAS;
GALAS;

Tai turėtų atlikti panašų veiksmą kaip „už“ kilpa.

Kursoriaus ciklas pavyzdys:

Toliau parodyta, kaip naudoti „cursor for“ kilpą norint gauti visą kliento vardą:

PRADĖTI
Darbuotojui IN (PASIRINKITE vardą, pavardę
IŠ darbuotojų) KILPOS
DBMS_OUTPUT.PUT_LINE(darbuotojo.vardas || ' ' || darbuotojo.pavardė);
END KIPA;
GALAS;

Išvesties pavyzdys:

Išvada

Šiame įraše susidūrėte su trimis pagrindiniais kilpų tipais Oracle PL/SQL kalboje. Norėdami sužinoti daugiau, galite peržiūrėti dokumentus.