Estructuras de Control

1 Estructuras de ControlSemana 3 ...
Author: José Carlos González Juárez
0 downloads 2 Views

1 Estructuras de ControlSemana 3

2 Aprendizajes esperadosConstruye procedimientos almacenados, triggers de base de datos, cursores y funciones que ayuden o implementen directamente soluciones a la lógica de negocio recogida en la captura de requerimientos de un sistema

3 Conceptos Claves En PL/SQL existen estructuras que controlan el flujo de la información

4 Estructura de Control IFSintáxis: IF THEN -- Código ELSIF THEN ELSE END IF;

5 Ejemplo uso de estructura IF

6 Estructura de control CASESintaxis: CASE variable WHEN valor 1 THEN – Código WHEN valor 2 THEN – Código WHEN valor 3 THEN – Código ELSE -- Código END CASE; La estructura de control CASE también puede usarse en una sentencia SELECT o asignar su resultado a una variable (Variable:= case….)

7 Ejemplo uso de estructura CASE

8 Estructura de Control GOTOLa sentencia GOTO permite desviar el flujo de ejecución a la etiqueta indicada Las etiquetas en el código se señalan con los símbolos << y >> Sintaxis: GOTO etiqueta

9 Ejemplo uso de estructura GOTO

10 Consideraciones a la Estructura de Control GOTONo es muy recomendable el uso de esta sentencia, ya que el abuso en su uso hace mas difícil el seguimiento del código para su depuración (rompe lo señalado para un lenguaje estructurado) Existen restricciones en su uso para algunos casos particulares, como por ejemplo, junto a la sentencia IF

11 Ejemplo de consideraciones a la estructura de control GOTO

12 Sentencias para ciclosPL/SQL ofrece tres formas para realizar ciclos: LOOP: Repite los ciclos infinitamente hasta que encuentra la instrucción EXIT WHILE: Repite los ciclos mientras la condición que lo acompaña sea verdadera FOR: Repite los ciclos tantas veces como lo señalen sus variables de inicio y termino

13 Sentencia LOOP Sintaxis 1: Sintaxis 2: LOOP LOOP -- Código -- CódigoIf then EXIT; End if; END LOOP; Sintaxis 2: LOOP -- Código EXIT WHEN ; END LOOP;

14 Ejemplo uso sentencia LOOP

15 Sentencia WHILE Sintaxis: WHILE LOOP -- CódigoEND LOOP; El ciclo se repite mientras sea verdadera

16 Ejemplo uso sentencia WHILE

17 Sentencia FOR Sintaxis: FOR contador IN [REVERSE] inicio..final LOOP-- Código END LOOP; Con la opción REVERSE el ciclo se ejecuta en forma inversa

18 Ejemplo uso sentencia FORLa variable j asume la estructura fila de la tabla persona (recordar el concepto de %rowtype)