Subprogramas en bloques anónimos

    Dentro de la seccion DECLARE de un bloque anónimo podemos declarar funciones y procedimientos almacenados y ejecutarlos desde el bloque de ejecución del script.

    Este tipo de subprogramas son menos conocidos que los procedimientos almacenados, funciones y triggers, pero son enormemente útiles.

   El siguiente ejemplo declara y ejecuta utiliza una funcion (fn_multiplica_x2).


DECLARE
      idx NUMBER;
       FUNCTION fn_multiplica_x2(num NUMBER) 
       RETURN NUMBER
       IS
         result NUMBER;
       BEGIN
         result := num *2;
         return result;
       END fn_multiplica_x2;
BEGIN
     FOR idx IN 1..10
     LOOP
       dbms_output.put_line
('Llamada a la funcion ... '||TO_CHAR(fn_multiplica_x2(idx)));
     END LOOP;
    
END;

    Notese que se utiliza la funcion TO_CHAR para convertir el resultado de la función fn_multiplica_x2 (numérico) en alfanumérico y poder mostrar el resultado por pantalla.

 

Subprogramas en bloques anónimos
Pedro Herrarte Sánchez

Pedro Herrarte, es consultor independiente, ofreciendo servicios de consultoría, análisis, desarrollo y formación. Posee mas de diez años de experiencia trabajando para las principales empresas de España. Es especialista en tecnologías .NET, entornos Web, bases de datos (SQL Server y ORACLE) e integración de sistemas. Es experto en desarrollo (C#, ASP.NET, VB.Net, T-SQL, PL/SQL, , ASP, CGI , C, Pro*C, Java, Essbase, Vignette, PowerBuilder y Visual Basic ...) y bases de datos (SQL Server y ORACLE). Es fundador, diseñador y programador de www.devjoker.com.