Capitolul II Structurarea bazelor de date
Capitolul II Structurarea bazelor de date
Capitolul II Structurarea bazelor de date
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
51<br />
b. WHILE - LOOP<br />
În PL/SQL pentru realizarea unei structuri repetitive condiŃionate anterior<br />
se utilizează instrucŃiunea WHILE - LOOP. Sintaxa unei astfel <strong>de</strong> structuri<br />
repetitive este următoarea:<br />
WHILE condiŃie LOOP<br />
END LOOP<br />
bloc <strong>de</strong> instrucŃiuni<br />
c. FOR - LOOP<br />
Ca şi în alte limbaje, parcurgerea unui şir <strong>de</strong> valori se realizează folosind<br />
o instrucŃiune FOR - LOOP. Exemplu <strong>de</strong> utilizare:<br />
-- Declaratii <strong>de</strong> variabile<br />
p NUMBER := 0;<br />
BEGIN<br />
FOR k IN 1..500 LOOP -- calcul pi ca suma a 500 termeni<br />
p := p + ( ( (-1) ** (k + 1) ) / ((2 * k) - 1) );<br />
END LOOP;<br />
p := 4 * p;<br />
DBMS_OUTPUT.PUT_LINE( 'pi este aproximativ : ' || p );<br />
END;<br />
/<br />
În exemplul dat variabila i va lua valori în intervalul <strong>de</strong> valori întregi<br />
introdus prin IN. Valorile sunt <strong>de</strong> regulă consecutive şi crescătoare. Dacă şirul<br />
valorilor introduse prin IN trebuie parcurs în ordine inversă se va folosi clauza<br />
REVERSE, ca în exemplul următor:<br />
BEGIN<br />
END;<br />
/<br />
FOR i IN REVERSE 1..5 LOOP<br />
END LOOP;<br />
DBMS_OUTPUT.PUT_LINE (TO_CHAR(i));<br />
Se interzice modificarea variabilei folosite la controlul ciclului în interiorul<br />
acestuia.<br />
Un exemplu tipic <strong>de</strong> utilizare a ciclului FOR în domeniul <strong>bazelor</strong> <strong>de</strong> <strong>date</strong><br />
este cel în care se actualizează într-un ciclu înregistrările dintr-un tabel.<br />
Exemple: