Estructuras de Control en PL/SQL

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;

JulexFR