Dos Tipos:
– Decisión
– Ciclos.
Sentencia IF
Sintaxis: IF (Condicion) THEN --Acciones o sentencias. [ELSIF (Condicion) THEN] [ELSE] --Acciones o sentencias. END IF;
CICLOS (LOOPS)
TIPOS DE LOOPS:
– Loops Simples.
– For Loops Numéricos
– While Loops
– Cursores For Loops
LOOPS SIMPLES:
Sintaxis: LOOP -- Lista de instrucciones. EXIT [WHEN condición]; -- Instrucción de Salida. END LOOP; Ejemplo: 1. LOOP x := x + 1; IF x = 50 THEN EXIT; -- Salida Abrupta END IF; END LOOP; 2. LOOP x := x + 1; Insert Into Control values (X); EXIT WHEN x = 50; -- Salida Condicionada. END LOOP;
For Loop Numéricos
Repite un conjunto de sentencias un número determinado de veces.
Toma cada valor en el rango uno a la vez, tanto si se recorre hacia delante o en reversa.
Sintaxis: For <index> in [Reverse] <inicio>..<Final> Loop -- Lista de sentencias a ejecutar. End Loop; Ejemplo: Begin /* La variable I puede estar declarada o no, se declara implícitamente al declarar y ejecutar el ciclo*/ FOR i IN 1..50 LOOP Insert into Temp ( consecutivo) values (‘asi-’||to_char(i)); END LOOP; End;
l WHILE LOOPS:
Repiten una secuencia de sentencias hasta que una condición especifica deje de ser verdadera.
Sintaxis: While Loop [EXIT] –para salida abrupta del ciclo. End Loop; Ejemplo: DECLARE vControl Number(3):= 0; Begin While vControl < 500 Loop Insert into tControl_audi(consecutivo) Values (vControl); vControl := vControl + 1; End Loop; End;