Procedimientos almacenados en oracle
8 Utilizando Subprogramas PL / SQL
En este capítulo se muestra cómo a su vez conjuntos de declaraciones en subprogramas reutilizables. Los subprogramas son como bloques de construcción modulares para aplicaciones mantenibles,.
Este capítulo contiene los siguientes temas:
• ¿Qué son los Subprogramas?
• Ventajas de Subprogramas PL / SQL
• Comprensión PL / SQLProcedimientos
• Entender Funciones PL / SQL
• Declarar anidadas Subprogramas PL / SQL
• Paso de parámetros a Subprogramas PL / SQL
• Sobrecarga de nombres Subprograma
• ¿Cuántas llamadas de subprograma se resuelven
• Derechos de uso de invocador versus derechos definidor (cláusula AUTHID)
• Uso de la recursividad con PL / SQL
• Llamar subprogramas externo
• Controlar los efectos secundarios deSubprogramas PL / SQL
• Subprograma comprensión de parámetros Aliasing
¿Qué son los Subprogramas?
Subprogramas se denominan bloques PL / SQL que se puede llamar con un conjunto de parámetros. PL / SQL tiene dos tipos de subprogramas, procedimientos y funciones. Generalmente, se utiliza un procedimiento para realizar una acción y una función para calcular un valor.
Similares a los bloques anónimos,subprogramas tienen:
• Una parte declarativa, con las declaraciones de tipos, cursores, constantes, variables, excepciones y subprogramas anidados. Estos elementos son locales y dejan de existir cuando el subprograma termina.
• Una parte ejecutable, con las declaraciones que asignan valores, control de ejecución, y manipular los datos de Oracle.
• Un opcional de control de excepciones parte, quese ocupa de las condiciones de error de ejecución.
Ejemplo 8-1 se muestra un procedimiento de manipulación de cadena doble que acepte parámetros de entrada y salida, y se ocupa de los posibles errores.
Ejemplo 8-1 PL / SQL Simple Procedimiento
DECLARE
in_string VARCHAR2 (100): = 'Esta es mi cadena de prueba. ";
out_string VARCHAR2 (200);
PROCEDIMIENTO doble (original en VARCHAR2,new_string FUERA VARCHAR2) AS
COMENZAR
new_string: = inicial | | '+' | | original;
EXCEPCIÓN
CUANDO ENTONCES VALUE_ERROR
DBMS_OUTPUT.PUT_LINE ("buffer de salida no lo suficiente.");
END;
COMENZAR
dobles (in_string, out_string);
DBMS_OUTPUT.PUT_LINE (in_string | | '-' | | out_string);
END;
/
Ejemplo 8-2 muestra una función numérica cuadrados quedeclara una variable local para almacenar los resultados temporales, y devuelve un valor cuando haya terminado.
Ejemplo 8-2 PL / SQL Simple Función
DECLARE
Función cuadrado (número original)
Devuelve el número COMO NÚMERO original_squared;
COMENZAR
original_squared: = original * original;
RETORNO original_squared;
END;
COMENZAR
DBMS_OUTPUT.PUT_LINE (cuadrados(100));
END;
/
Nota:
• El SQL CREAR FUNCION declaración le permite crear funciones independientes que se almacenan en una base de datos Oracle. Para más información, consulteCREAR FUNCION en Base de Datos Oracle SQL .
• El SQL CREAR PROCEDIMIENTO declaración le permite crear procedimientos independientes que se almacenan en la base de datos. Para más información, consulte CREAR PROCEDIMIENTO enla base de datos Oracle SQL .
• Puede ejecutar las CREAR FUNCION o CREAR PROCEDIMIENTO declaración interactiva de SQL * Plus, o de un programa que utiliza SQL dinámico nativo.Ver el capítulo 7, "Realización de operaciones de SQL con los nativos de SQL dinámico" .
Ventajas de Subprogramas PL / SQL
Subprogramas permiten ampliar el lenguaje PL / SQL. Procedimientos actúan como nuevasdeclaraciones.Funciones de actuar como nuevas expresiones y los operadores.
Los subprogramas que se rompe un programa abajo en manejables y bien definidos los módulos. Puede utilizar el diseño de arriba hacia abajo y el enfoque de refinamiento paso a paso para la solución de problemas.
Subprogramas promover la reutilización. Una vez probado, un subprograma puede ser reutilizado en cualquier número de...
Regístrate para leer el documento completo.