Úvod do slučiek v PL / SQL

Procedurálny jazyk / štruktúrovaný dopytovací jazyk alebo PL / SQL je procedurálnym rozšírením Oracle Corporation pre Oracle RDBMS. PL / SQL rozšíril SQL pridaním konštruktov používaných v procedurálnych jazykoch, aby sa umožnilo zložitejšie programovanie ako poskytuje SQL. Príkladom týchto štruktúr sú IF … THEN… ELSE, základné slučky, FOR slučky a WHILE slučky.

Vysvetlite rôzne typy slučiek v PL / SQL

Tento článok vám vysvetlí iteratívnu štruktúru riadenia, čo znamená slučky PL / SQL; umožní vám to opakovane spúšťať rovnaký kód. PL / SQL poskytuje tri rôzne typy slučiek:

  • Jednoduchá alebo nekonečná slučka
  • Slučka FOR
  • WHILE loop

Každá z týchto slučiek je tu navrhnutá na konkrétny účel, pravidlá používania a pokyny na vytváranie vysoko kvalitných údajov.

Príklady rôznych slučiek

Zvážte nasledujúce tri postupy, aby ste pochopili rôzne slučky a ich schopnosť riešiť problémy rôznymi spôsobmi.

1. Simple Loop

Táto slučka je taká jednoduchá ako jej názov. Začína kľúčovým slovom LOOP a končí koncovým príkazom „END LOOP“.

syntax

LOOP
The sequence of statements;
END LOOP;

Tu, podľa vyššie uvedeného syntaxového kľúčového slova, 'LOOP' označuje začiatok slučky a 'END LOOP' označuje koniec slučky. Sekvencia časti príkazu môže obsahovať akýkoľvek príkaz na vykonanie.

Príklad jednoduchej slučky

Napíšme program, ktorý vytlačí multiplikačnú tabuľku z 18.

Vo vyššie uvedenej slučke nemáme vyhlásenie „EXIT“; znamená, že vykonanie výstupu bude nekonečné, kým tento program nezatvoríme manuálne.

Nižšie nájdete program s príkazom Exit:

Vysvetlenie vyššie uvedeného programu

V sekcii vyhlásenia sme deklarovali dve premenné; premenná v_counter bude slúžiť ako počítadlo a v_result bude držať výsledok násobenia.

V exekučnej časti máme jednoduchú slučku, tu máme tri výroky.

  • Prvé vyhlásenie bude fungovať ako naše aktualizované vyhlásenie; Tým sa náš počítadlo aktualizuje a zvýši sa o 1.
  • Druhý príkaz je aritmetický výraz, ktorý vykoná násobenie našej tabuľky a výsledok uloží do premennej v_result.
  • Tretí príkaz je výstupný príkaz, ktorý vytlačí výsledok násobenia formátovaným spôsobom.

Použitie vyhlásenia o výstupe

Podľa príkazu exit ak v_counter> = 10, potom slučka s výstupom, čo znamená, že slučka sa vykoná 10-krát.

Výkon:

2. FOR Loop

Slučka FOR umožňuje opakovane vykonávať blok príkazov po pevne stanovený počet opakovaní.

syntax

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

  • Prvý riadok syntaxe je príkaz loop, kde kľúčové slová FOR označujú začiatok slučky nasledovaný počítadlom slučky, čo je implicitná celočíselná premenná indexu.
  • To znamená, že nemusíte definovať túto premennú v sekcii deklarácie, na rozdiel od ostatných slučiek, v ktorých musíme definovať počítadlo slučiek, sa implicitne zvýši aj o každú iteráciu slučky o 1.
  • Kľúčové slovo IN je súčasťou programu FOR Loop.
  • Kľúčové slovo REVERSE nie je povinné, ale vždy sa používa v spojení s kľúčovým slovom IN.
  • Ak sa použije kľúčové slovo REVERSE, slučka sa iteruje v opačnom poradí.
  • Lower_limit a upper_limit sú dve celé čísla. Tieto dve premenné definujú určitý počet opakovaní slučky.
  • Ako bodový operátor slúžia dve bodky medzi týmito dvoma premennými.
  • Potom máme telo slučky, čo môže byť príkaz alebo skupina príkazov.
  • Na konci máme frázu END LOOP, ktorá označuje ukončenie slučky.

Príklad č. 1

Tu, podľa vyššie uvedeného programu, máme našu slučku FOR, ktorá vytlačí hodnotu premennej v_counter od 11 do 20.

Výkon:

Príklad č. 2: Teraz tlačme to isté v opačnom poradí pomocou FOR slučky.

Stačí pridať kľúčové slovo REVERSE po IN a pred 11, toto vykoná rovnaké o / p, ale v opačnom poradí.

3. WHILE Loop

Aj keď slučka vykonáva príkazy programu viackrát, je to najlepšie pre program, keď nie je známa žiadna z iterácií.

syntax

WHILE condition LOOP
Statement 1;
Statement 2;

Statement N;
END LOOP;

  • Na rozdiel od inej syntaxe WHILE loop, je syntax veľmi ľahko zrozumiteľná. Tu, podľa vyššie uvedenej syntaxe, „WHILE“ označuje začiatok slučky spolu s podmienkou a „END LOOP“ označuje koniec slučky.
  • Príkazy 1 až N sú spustiteľné príkazy definované v tele slučky. Nakoniec sme spomenuli END LOOP, ktorý označuje koniec slučky while.
  • Na spustenie príkazov vo vnútri tela slučky while musí byť podmienka pravdivá.

Príklad: vytlačte multiplikačnú tabuľku 17 s použitím while while.

  • V tomto príklade máme prvú premennú „v_counter“, ktorá bude slúžiť ako počítadlo a druhá premenná je „v_result“, ktorá bude držať výsledok násobenia.
  • Tu je prvý príkaz aritmetický výraz vo vnútri WHILE slučky, ktorá bude robiť úlohu násobenia tabuľky a výsledok sa uloží do v_result.
  • Druhým príkazom je príkaz print, ktorý vytlačí výsledky násobenia. Tretím príkazom je aktualizačné počítadlo, ktoré aktualizuje počítadlo pri každej iterácii
  • Táto slučka bude fungovať, až kým nebudeme mať hodnotu počítadla väčšiu alebo rovnú 10 a WHILE slučka dostane ukončenú hodnotu 10 počítadla.

Výkon:

Výhody slučiek v PL / SQL

  • Opakovaná použiteľnosť kódu je najlepšou výhodou slučiek, nemusíme opakovane písať kód pre každú iteráciu, pomocou slučiek môžeme kód znovu použiť v každej iterácii.
  • Slučky nám tiež pomáhajú zmenšovať veľkosť kódu alebo veľkosť programu. Všetko, čo musíme urobiť, je len napísať jeden jednoduchý kód a vložiť ho do ktorejkoľvek slučky na dokončenie práce bez kódovania pre rôzne výstupy z toho istého programu.
  • Výhodou slučiek je tiež zníženie zložitosti.

Záver - Slučky v PL / SQL

SQL je jediné rozhranie relačnej databázy a PL / SQL je procedurálne rozšírenie SQL. Je dôležité porozumieť tomu, ako funguje SQL a správne navrhovať databázy a obchodnú logiku, aby sa dosiahol správny výsledok. PL / SQL sa dá použiť vo vnútri databázy a má veľa výkonných funkcií. V databáze Oracle Database 12.1 existuje veľa vylepšení PL / SQL. Použite SQL vždy, keď je to možné, ale ak je váš dotaz príliš komplikovaný alebo sú potrebné procedurálne vlastnosti, je najlepšie použiť namiesto toho PL / SQL.

Odporúčané články

Toto bol sprievodca po slučkách v PL / SQL. Ďalej uvádzame príklady a rôzne typy slučiek s príkladmi. Ak sa chcete dozvedieť viac, môžete si pozrieť aj nasledujúce články -

  1. Čo je PL / SQL?
  2. Testovanie škálovateľnosti
  3. Čo je to programovací jazyk R?
  4. Čo je to PHP?
  5. Top 36 kľúčových slov v SQL s príkladmi
  6. Slučky v PowerShell | Druhy výhody