Uvod v zanke v PL / SQL

Proceduralni jezik / strukturirani poizvedbeni jezik ali PL / SQL je proceduralna razširitev za Oracle RDBMS podjetja Oracle Corporation. PL / SQL je razširil SQL z dodajanjem konstrukcij, ki se uporabljajo v procesnih jezikih, da se omogoči bolj zapleteno programiranje, kot ga omogoča SQL. Primeri teh struktur so ČE… THEN… ELSE, osnovne zanke, zanke FOR in WHILE.

Pojasnite različne vrste zank v PL / SQL

Ta članek vam bo razložil iterativno strukturo nadzora pomeni zanke PL / SQL; omogočil vam bo večkratno izvajanje iste kode. PL / SQL ponuja tri različne vrste zank:

  • Preprosta ali neskončna zanka
  • Zanka ZA
  • Zanka WHILE

Tu je vsaka zanka zasnovana za določen namen, pravila za uporabo in smernice za visokokakovostno ustvarjanje.

Primeri različnih zank

Razmislite o naslednjih treh postopkih, če želite razumeti različne zanke in njihovo sposobnost reševanja težav na različne načine.

1. Preprosta zanka

Ta zanka je tako preprosta kot njeno ime. Začne se s ključno besedo LOOP in konča s končnim stavkom „END LOOP“.

Sintaksa

LOOP
The sequence of statements;
END LOOP;

Tukaj, glede na zgornjo besedilo sintakse, "LOOP" označi začetek zanke in "END LOOP" označi konec zanke. Zaporedje izjavnega dela lahko vsebuje katero koli izjavo za izvedbo.

Primer enostavne zanke

Napišimo program za tiskanje pomnoževalne tabele 18.

Tu v zgornji zanki nimamo stavka "EXIT"; pomeni, da se bo izvedba izida nadaljevala neskončno, dokler ne ročno zapremo tega programa.

Glejte spodaj program z izjavo Exit:

Pojasnilo zgornjega programa

V razdelku deklaracije smo razglasili dve spremenljivki; spremenljivka v_counter bo služila kot števec in v_result bo zadrževal rezultat množenja.

V spodnjem delu izvedbe imamo preprosto zanko, tukaj imamo tri izjave.

  • Prva izjava bo delovala kot naša izjava o posodobitvi; to bo naš števec posodobil in ga povečal za 1.
  • Drugi stavek je aritmetični izraz, ki bo izvedel množenje naše tabele in rezultat shranil v spremenljivko v_result.
  • Tretji stavek je izhodni stavek, ki bo rezultat množenja natisnil oblikovano.

Uporaba izhoda

Po izhodnem stavku, če je v_counter> = 10, potem se zanka z izhodom, kar pomeni, da se zanka izvede 10-krat.

Izhod:

2. Zanka ZA

Zanka FOR vam omogoča, da blok izjav izvajate večkrat za določeno številokrat.

Sintaksa

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

  • Prva vrstica skladnje je stavek zanke, kjer ključne besede FOR označujejo začetek zanke, ki mu sledi števec zanke, ki je implicitna celotna spremenljivka indeksa.
  • To pomeni, da vam ni treba definirati te spremenljivke v razdelku deklaracije, prav tako se bo na vsaki ponovitvi vaše zanke povečal za 1, za razliko od drugih zank, kjer moramo definirati števec zanke.
  • Ključna beseda IN mora biti v programu FOR Loop.
  • Ključna beseda REVERSE ni obvezna, vendar se vedno uporablja v povezavi s ključno besedo IN.
  • Če uporabimo ključno besedo REVERSE, bo zanka iteratila v obratnem vrstnem redu.
  • down_limit in zgornja_limit sta dve celi številki. Ti dve spremenljivki opredeljujeta več ponovitev zanke.
  • Dve piki med tema dvema spremenljivkama služita kot operaterja obsega.
  • Nato imamo telo zanke, ki je lahko izjava ali skupina izjav.
  • Na koncu imamo stavek END LOOP, ki označuje konec zanke.

Primer 1

V zgornjem programu imamo zanko FOR, ki bo natisnila vrednost spremenljivke v_counter od 11 do 20.

Izhod:

Primer # 2: Zdaj tiskamo isto v obratnem vrstnem redu z zanko FOR.

Preprosto dodajte ključno besedo REVERSE po IN in pred 11, to bo izvedlo isto o / p, vendar v obratnem vrstnem redu.

3. ZGODBA zanke

Medtem ko zanka večkrat izvede izjave programa, se tudi ta najbolje uporablja za program, kadar nobena iteracija ni znana.

Sintaksa

WHILE condition LOOP
Statement 1;
Statement 2;

Statement N;
END LOOP;

  • Za razliko od druge skladnje WHILE zanke je sintakso zelo enostavno razumeti. Tu kot v zgornji skladnji 'WHILE' označi začetek zanke skupaj s pogojem in 'END LOOP' navede konec zanke.
  • Izjave 1 do N so izvršljive izjave, definirane v telesu zanke. Poleg tega smo na koncu omenili END LOOP, ki označuje konec zanke while.
  • Če želite izvajati izjave v telesu zanke while, mora biti pogoj resničen.

Primer: Natisnite tabelo za množenje 17 s pomočjo zanke.

  • V tem primeru imamo prvo spremenljivko "v_counter", ki nam bo koristila kot števec, druga spremenljivka pa je "v_result", kar bo rezultat množenja.
  • Tu je prvi stavek aritmetični izraz znotraj zanke WHILE, ki opravlja nalogo množenja in rezultatov tabele, shranjen v v_result.
  • Druga izjava je izjava za tiskanje, ki bo natisnila rezultate množenja. Tretji stavek je števec posodobitev, ki bo posodobil števec z vsako ponovitvijo
  • Ta zanka bo še naprej delovala, dokler ne štejemo vrednosti več kot ali enake 10 in ko se zanka WHILE konča po števki 10 po številu.

Izhod:

Prednosti zank v PL / SQL

  • Ponovna uporabnost kode je najboljša prednost zank, ni nam treba večkrat pisati kode za vsako ponovitev, z uporabo zank pa lahko kodo ponovno uporabimo v vsaki ponovitvi.
  • Zanke nam pomagajo tudi pri zmanjševanju velikosti kode ali velikosti programa. Vse, kar moramo storiti, je samo, da napišemo eno preprosto kodo in jo vstavimo v katero koli zanko, da dokončamo delo, ne da bi kodirali različne izhode istega programa.
  • Zmanjšanje zapletenosti je dodalo tudi prednost zank.

Zaključek - Zanke v PL / SQL

SQL je edini vmesnik do relacijske baze podatkov, PL / SQL pa proceduralna razširitev na SQL. Pomembno je razumeti, kako deluje SQL, in pravilno oblikovati podatkovne baze in poslovno logiko, da dobite pravi rezultat. PL / SQL se lahko uporablja znotraj baze podatkov in ima številne močne funkcije. V Oracle Database 12.1 je veliko izboljšav za PL / SQL. Kadar je le mogoče, uporabljajte SQL, vendar če je vaša poizvedba preveč zapletena ali so potrebne postopkovne funkcije, je najbolje, da uporabite PL / SQL.

Priporočeni članki

To je vodnik za zanke v PL / SQL. Tukaj tudi s primeri obravnavamo prednosti in različne vrste zank. Za več informacij si lahko ogledate tudi naslednje članke -

  1. Kaj je PL / SQL?
  2. Testiranje skalabilnosti
  3. Kaj je programski jezik R?
  4. Kaj je PHP?
  5. 36 ključnih besed v SQL s primeri
  6. Zanke v PowerShellu | Vrste | Prednosti