Introduktion till Loops i PL / SQL

Proceduralspråk / strukturerat frågespråk eller PL / SQL är Oracle Corporation: s procedurförlängning för Oracle RDBMS. PL / SQL utökade SQL genom att lägga till konstruktioner som används på procedurspråk för att möjliggöra mer komplex programmering än SQL ger. Exempel på dessa strukturer är IF … THEN … ELSE, basic loopar, FOR loopar och WHILE loopar.

Förklara olika typer av slingor i PL / SQL

Den här artikeln kommer att förklara att den iterativa kontrollstrukturen betyder slingor av PL / SQL; det låter dig köra samma kod upprepade gånger. PL / SQL tillhandahåller tre olika typer av slingtyper:

  • Den enkla eller oändliga slingan
  • FOR-slingan
  • WHILE-slingan

Här är varje slinga utformad för ett specifikt syfte, regler för användning och riktlinjer för skapande av hög kvalitet.

Exempel på olika slingor

Tänk på följande tre procedurer för att förstå olika slingor och deras problemlösningsförmåga på olika sätt.

1. Den enkla slingan

Denna slinga är lika enkel som namnet. Det börjar med nyckelordet LOOP och slutar med slutmeddelandet “END LOOP”.

Syntax

LOOP
The sequence of statements;
END LOOP;

Här, enligt ovanstående syntaxsökord, markerar 'LOOP' början på loopen och 'END LOOP' uppgav slutet på loopen. Sekvensen för uttalandedelen kan innehålla alla uttalanden för exekvering.

Exempel på enkel slinga

Låt oss skriva ett program för att skriva ut multiplikationstabellen på 18.

Här i slingan ovan har vi inte ”EXIT” -uttalandet; betyder att utgångsutförandet kommer att fortsätta oändligt tills vi stänger det här programmet manuellt.

Se nedan program med Exit statement:

Förklaring av programmet ovan

I deklarationsavsnittet har vi deklarerat två variabler; variabel v_counter kommer att fungera som en räknare och v_result kommer att hålla resultatet av multiplikationen.

Nere körsektionen har vi vår enkla slinga, här har vi tre uttalanden.

  • Det första uttalandet fungerar som vårt uppdateringsförklaring; detta kommer att uppdatera vår räknare och öka den med 1.
  • Det andra påståendet är ett aritmetiskt uttryck som kommer att utföra multiplikationen av vårt bord och lagrar resultatet i v_result variabel.
  • Det tredje uttalet är ett utdatauttalande, som kommer att skriva ut resultatet av multiplikationen på ett formaterat sätt.

Användning av utgångsdeklarationen

Som per utgångsuttag om v_counter> = 10, slinga med en utgång vilket betyder att slingan kommer att köras 10 gånger.

Produktion:

2. FOR-slingan

FOR-loop ger dig möjlighet att utföra blocket med uttalanden upprepade gånger under ett fast antal gånger.

Syntax

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

  • Den första raden i syntaxen är slingan, där nyckelord FOR markerar början av slingan följt av slingräknare, som är en implicit index heltalvariabel.
  • Detta betyder att du inte behöver definiera denna variabel i deklarationsavsnittet, den kommer också att öka sig själv med 1 implicit på varje iteration av din slinga, till skillnad från de andra slingorna där vi måste definiera slingräknare.
  • Nyckelord IN är ett måste för att vara i FOR Loop-programmet.
  • Nyckelord REVERSE är inte obligatoriskt men används alltid i samband med sökord IN.
  • Om nyckelord REVERSE används kommer öglan att upprepas i omvänd ordning.
  • lägre_limit och övre_limit är två heltal. Dessa två variabler definierar ett antal iteration av slingan.
  • Två punkter mellan dessa två variabler fungerar som områdesoperatören.
  • Sedan har vi kroppen på loopen, som kan vara ett uttalande eller en grupp uttalanden.
  • I slutändan har vi frasen END LOOP som anger slutet på loopen.

Exempel 1

Här enligt ovanstående program har vi vår FOR-slinga som kommer att skriva ut värdet på v_counter-variabeln från 11 till 20.

Produktion:

Exempel 2: Låt oss nu skriva ut samma i omvänd ordning med FOR-loop.

Lägg bara till nyckelord REVERSE efter IN och före 11, detta kommer att utföra samma o / p men i omvänd ordning.

3. WHILE-slingan

Medan loop exekverar uttalanden om programmet flera gånger, används det bäst för programmet när ingen av iterationer är okända.

Syntax

WHILE condition LOOP
Statement 1;
Statement 2;

Statement N;
END LOOP;

  • Till skillnad från en annan syntax WHILE-loop är syntaxen mycket lätt att förstå. Här enligt syntaxen ovan markerar 'WHILE' början av slingan tillsammans med villkor och 'END LOOP' uppgav slutet på loopen.
  • Uttalningarna 1 till N är de körbara uttalandena, definierade i loopens kropp. I slutändan har vi nämnt END LOOP som anger slutet på medan loopen.
  • För att kunna köra uttalanden inuti kroppen på While-loopen måste villkoret vara sant.

Exempel: Skriv ut multiplikationstabellen med 17 med hjälp av loopen.

  • I det här exemplet har vi den första variabeln "v_counter" som kommer att fungera som räknare och den andra variabeln är "v_result". Detta kommer att hålla resultatet av multiplikationen.
  • Här är det första uttalandet ett aritmetiskt uttryck inuti WHILE-slingan, som kommer att utföra uppgiften med tabellmultiplikation och resultat, kommer att lagras i v_resultat.
  • Det andra uttalandet är utskriftsteckningen, som kommer att skriva ut multiplikationsresultat. Det tredje uttalandet är uppdateringsräknare, som kommer att uppdatera räknaren med varje iteration
  • Detta medan loop fortsätter att fungera tills vi har räknarvärdet mer än eller lika med 10 och WHILE loop kommer att avslutas efter 10 räknarvärde.

Produktion:

Fördelar med slingor i PL / SQL

  • Kodåteranvändbarhet är den bästa fördelen med slingor, vi behöver inte skriva kod upprepade gånger för varje iteration, med slingor kan vi återanvända kod i varje iteration.
  • Loops hjälper oss också att minska kodstorleken eller programstorleken. Allt vi behöver göra är att bara skriva en enkel kod och lägga den i valfri slinga för att slutföra arbetet utan att koda för olika utgångar från samma program.
  • Komplexitetsminskning har också lagt till fördelen med slingor.

Slutsats - Loops i PL / SQL

SQL är det enda gränssnittet till en relationsdatabas, och PL / SQL är en procedurförlängning till SQL. Det är viktigt att förstå hur SQL fungerar och att designa databaser och affärslogik korrekt för att få rätt resultatuppsättning. PL / SQL kan användas i databasen, och den har många kraftfulla funktioner. Det finns många förbättringar av PL / SQL i Oracle Database 12.1. Använd SQL när det är möjligt, men om din fråga blir för komplicerad eller procedurfunktioner behövs är det bäst att använda PL / SQL istället.

Rekommenderade artiklar

Detta har varit en guide till Loops i PL / SQL. Här diskuterar vi också fördelar och olika typer av slingor med exempel. Du kan också titta på följande artiklar för att lära dig mer–

  1. Vad är PL / SQL?
  2. Skalbarhetstest
  3. Vad är R-programmeringsspråk?
  4. Vad är PHP?
  5. Topp 36 sökord i SQL med exempel
  6. Loops i PowerShell | Typer | fördelar