Wprowadzenie do pętli w PL / SQL

Język proceduralny / język zapytań strukturalnych lub PL / SQL jest rozszerzeniem proceduralnym Oracle Corporation dla Oracle RDBMS. PL / SQL rozszerza SQL poprzez dodanie konstrukcji używanych w językach proceduralnych, aby umożliwić bardziej złożone programowanie niż SQL. Przykładami takich struktur są JEŻELI… NASTĘPNIE… ELSE, pętle podstawowe, pętle FOR i pętle WHILE.

Wyjaśnij różne typy pętli w PL / SQL

W tym artykule wyjaśnimy Ci, że iteracyjna struktura kontroli oznacza pętle PL / SQL; pozwoli ci wielokrotnie uruchamiać ten sam kod. PL / SQL zapewnia trzy różne rodzaje typów pętli:

  • Prosta lub nieskończona pętla
  • Pętla FOR
  • Pętla WHILE

Tutaj każda pętla jest zaprojektowana do określonego celu, zasad użytkowania i wskazówek dotyczących tworzenia wysokiej jakości.

Przykłady różnych pętli

Rozważ następujące trzy procedury, aby zrozumieć różne pętle i ich zdolność do rozwiązywania problemów na różne sposoby.

1. Prosta pętla

Ta pętla jest tak prosta, jak sama nazwa. Zaczyna się od słowa kluczowego LOOP, a kończy na końcu instrukcji „END LOOP”.

Składnia

LOOP
The sequence of statements;
END LOOP;

Tutaj, zgodnie z powyższym słowem kluczowym składni, „LOOP” oznacza początek pętli, a „END LOOP” oznacza koniec pętli. Sekwencja części instrukcji może zawierać dowolną instrukcję do wykonania.

Przykład prostej pętli

Napiszmy program, który wydrukuje tabliczkę mnożenia z 18.

W powyższej pętli nie mamy instrukcji „EXIT”; oznacza, że ​​wykonanie wyjścia będzie nieskończone, dopóki nie zamkniemy tego programu ręcznie.

Zobacz program poniżej z instrukcją Exit:

Objaśnienie powyższego programu

W sekcji deklaracji zadeklarowaliśmy dwie zmienne; zmienna v_counter będzie służyć jako licznik, a v_result zatrzyma wynik mnożenia.

W dolnej części sekcji wykonawczej mamy naszą prostą pętlę, tutaj mamy trzy instrukcje.

  • Pierwsza instrukcja będzie działać jako nasza instrukcja aktualizacji; to zaktualizuje nasz licznik i zwiększy go o 1.
  • Druga instrukcja jest wyrażeniem arytmetycznym, które wykona mnożenie naszej tabeli i zapisze wynik w zmiennej v_result.
  • Trzecia instrukcja jest instrukcją wyjściową, która wypisze wynik mnożenia w sformatowany sposób.

Korzystanie z wyciągu

Zgodnie z instrukcją exit, jeśli v_counter> = 10, to zapętl się z wyjściem, co oznacza, że ​​pętla zostanie wykonana 10 razy.

Wynik:

2. Pętla FOR

Pętla FOR umożliwia wielokrotne wykonywanie bloku instrukcji przez określoną liczbę razy.

Składnia

FOR loop_counter IN (REVERSE) lower_limit .. upper_limit LOOP
Statement1;
Statement2;
….Statement3;
END LOOP;

  • Pierwszy wiersz składni to instrukcja pętli, w której słowa kluczowe FOR oznaczają początek pętli, a następnie licznik pętli, który jest niejawną zmienną całkowitą indeksu.
  • Oznacza to, że nie musisz definiować tej zmiennej w sekcji deklaracji, zwiększy się ona również o 1 domyślnie na każdej iteracji twojej pętli, w przeciwieństwie do innych pętli, w których musimy zdefiniować licznik pętli.
  • Słowo kluczowe IN musi być w programie FOR Loop.
  • Słowo kluczowe REVERSE nie jest obowiązkowe, ale zawsze używane w połączeniu z Keyword IN.
  • Jeśli zostanie użyte słowo kluczowe REVERSE, pętla będzie iterować w odwrotnej kolejności.
  • dolna_limit i górna_limit to dwie liczby całkowite. Te dwie zmienne określają liczbę iteracji pętli.
  • Dwie kropki między tymi dwiema zmiennymi służą jako operator zakresu.
  • Następnie mamy treść pętli, która może być instrukcją lub grupą instrukcji.
  • Na koniec mamy zwrot END LOOP, który wskazuje na zakończenie pętli.

Przykład 1

Tutaj, zgodnie z powyższym programem, mamy naszą pętlę FOR, która wypisze wartość zmiennej v_counter od 11 do 20.

Wynik:

Przykład 2: Teraz wypiszmy to samo w odwrotnej kolejności za pomocą pętli FOR.

Wystarczy dodać słowo kluczowe REVERSE po IN i przed 11, spowoduje to wykonanie tego samego polecenia o / p, ale w odwrotnej kolejności.

3. PĘTLA WHILE

Chociaż pętla wykonuje instrukcje programu wiele razy, najlepiej jest to również stosować w programie, gdy żadna z iteracji nie jest nieznana.

Składnia

WHILE condition LOOP
Statement 1;
Statement 2;

Statement N;
END LOOP;

  • W przeciwieństwie do innej pętli składni WHILE, składnia jest bardzo łatwa do zrozumienia. Tutaj, zgodnie z powyższą składnią, „WHILE” oznacza początek pętli wraz z warunkiem, a „END LOOP” podaje koniec pętli.
  • Instrukcje od 1 do N są instrukcjami wykonywalnymi, zdefiniowanymi w treści pętli. Ponadto na końcu wspomnieliśmy o pętli END, która wskazuje koniec pętli while.
  • Aby uruchomić instrukcje w treści pętli While, warunek musi być spełniony.

Przykład: Wydrukuj tabliczkę mnożenia 17 używając pętli while.

  • W tym przykładzie mamy pierwszą zmienną „v_counter”, która będzie służyć jako licznik, a drugą zmienną jest „v_result”, która będzie przechowywać wynik mnożenia.
  • Tutaj pierwsza instrukcja jest wyrażeniem arytmetycznym wewnątrz pętli WHILE, która będzie wykonywać zadanie mnożenia tabeli i wyniku, zostanie zapisana w v_result.
  • Drugą instrukcją jest instrukcja print, która wypisze wyniki mnożenia. Trzecią instrukcją jest licznik aktualizacji, który aktualizuje licznik przy każdej iteracji
  • Ta pętla while będzie działać, dopóki nie będziemy mieli wartości licznika większej lub równej 10, a PĘTLA zostanie zakończona po wartości licznika 10.

Wynik:

Zalety pętli w PL / SQL

  • Ponowne użycie kodu jest najlepszą zaletą pętli, nie musimy wielokrotnie pisać kodu dla każdej iteracji, używając pętli możemy ponownie użyć kodu w każdej iteracji.
  • Pętle pomagają nam również zmniejszyć rozmiar kodu lub rozmiar programu. Wszystko, co musimy zrobić, to po prostu napisać jeden prosty kod i umieścić go w dowolnej pętli, aby ukończyć pracę bez kodowania różnych wyników tego samego programu.
  • Redukcja złożoności dodała także zaletę pętli.

Wniosek - Pętle w PL / SQL

SQL jest jedynym interfejsem do relacyjnej bazy danych, a PL / SQL jest proceduralnym rozszerzeniem SQL. Ważne jest, aby zrozumieć, jak działa SQL i odpowiednio zaprojektować bazy danych i logikę biznesową, aby uzyskać właściwy zestaw wyników. PL / SQL może być używany w bazie danych i ma wiele zaawansowanych funkcji. Istnieje wiele ulepszeń PL / SQL w Oracle Database 12.1. Używaj SQL, gdy tylko jest to możliwe, ale jeśli twoje zapytanie staje się zbyt skomplikowane lub potrzebne są funkcje proceduralne, najlepiej zamiast niego użyć PL / SQL.

Polecane artykuły

To był przewodnik po pętlach w PL / SQL. Tutaj omawiamy również zalety i różne rodzaje pętli z przykładami. Możesz także zapoznać się z następującymi artykułami, aby dowiedzieć się więcej -

  1. Co to jest PL / SQL?
  2. Testy skalowalności
  3. Co to jest język programowania R?
  4. Co to jest PHP?
  5. Najpopularniejsze 36 słów kluczowych w SQL z przykładami
  6. Pętle w programie PowerShell | Rodzaje | Korzyści