Pętle PL/SQL

Petle Pl Sql



Pętle są jednym z podstawowych elementów składowych programowania. Używamy pętli do tworzenia łatwych do zarządzania bloków kodu, które mogą być wykonywane wiele razy, gdy spełniony jest określony warunek. Są podstawową kością podczas automatyzacji powtarzalnych zadań bez wielokrotnego pisania bloku kodu.

Podobnie jak wszystkie główne języki programowania, PL/SQL obsługuje pętle, które umożliwiają powtarzanie zestawu instrukcji, dopóki nie zostanie spełniony określony warunek.

W tym samouczku przyjrzymy się wykorzystaniu instrukcji LOOP w języku PL/SQL do wielokrotnego wykonywania bloku kodu.







Pętle Oracle

Język PL/SQL obsługuje różne konstrukcje pętli, takie jak pętle „for” i „while”. Możemy wyrazić składnię ogólnej pętli w Oracle, jak pokazano poniżej:



<< etykieta >> PĘTLA
instrukcja_pętli;
KONIEC PĘTLI etykieta_pętli;

Zawiera słowo kluczowe LOOP i treść pętli do wykonania i jest dołączone do słowa kluczowego END LOOP.



Blok LOOP uruchamia zdefiniowane akcje i zwraca sterowanie do klauzuli górnej pętli po zakończeniu. Zwykle jest to zawarte w klauzuli EXIT lub EXIT WHEN, aby zakończyć pętlę po spełnieniu określonego warunku. Pomaga to uniknąć nieskończonych pętli.





Oracle dla składni pętli:

Poniżej przedstawiono składnię pętli „for” w języku PL/SQL:

ROZPOCZĄĆ
FOR pętli_zmienna IN [dolna_granica..górna_granica] PĘTLA
-- kod do wykonania w pętli
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;

Loop_variable pozwala zdefiniować pętlę, która jest używana do kontrolowania pętli oraz dolnych i górnych granic. Górne i dolne granice określają wartości zakresu, w których występuje ocena pętli.



Oracle while pętli

Możemy również zdefiniować pętle „while” w PL/SQL, co pokazuje następująca składnia:

ROZPOCZĄĆ
PĘTLA warunku WHILE
-- działanie w pętli
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;

W pętli „while” akcja pętli jest wykonywana wielokrotnie, dopóki warunek jest prawdziwy.

Kursor Oracle dla pętli

Oracle obsługuje również pętle „kursor for”, dzięki którym możemy wykonać zestaw instrukcji dla każdego wiersza w danym zestawie wyników. Składnię można wyrazić w następujący sposób:

ROZPOCZĄĆ
FOR pętla_zmienna IN (WYBIERZ kolumnę 1, kolumnę 2, ...
Z tabeli 1, tabeli 2, ...
GDZIE warunek) PĘTLA
-- działanie w pętli
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;

Przykładowe pętle w Oracle

Poniższe przykłady obejmują podstawy pracy z pętlami kursora for, while i for w Oracle.

Przykład pętli Oracle For:

Ten przykład pokazuje, jak używać pętli „for” do drukowania liczb od 1 do 10.

ROZPOCZĄĆ
FOR i W PĘTLI 1..10
DBMS_OUTPUT.PUT_LINE(i);
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;

Przykład pętli while:

Możemy wykonać podobną akcję za pomocą pętli while, jak pokazano poniżej:

ROZPOCZĄĆ
OGŁOSIĆ
i LICZBA := 1;
ROZPOCZĄĆ
GDY i <= 10 PĘTLA
DBMS_OUTPUT.PUT_LINE(i);
ja := ja + 1;
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;
KOŃCZYĆ SIĘ;

Powinno to wykonać podobną akcję do pętli „for”.

Przykład kursora dla pętli:

Poniżej pokazano, jak użyć pętli „kursor do”, aby uzyskać pełne imię i nazwisko klienta:

ROZPOCZĄĆ
FOR pracownik IN (WYBIERZ imię, nazwisko
OD pracowników) PĘTLA
DBMS_OUTPUT.PUT_LINE(pracownik.imię || ' ' || pracownik.nazwisko);
KONIEC PĘTLI;
KOŃCZYĆ SIĘ;

Przykładowe dane wyjściowe:

Wniosek

W tym poście spotkałeś się z trzema głównymi typami pętli w języku Oracle PL/SQL. Możesz sprawdzić dokumentację, aby dowiedzieć się więcej.