sql >> Base de Datos >  >> RDS >> Oracle

Cómo crear procedimientos almacenados PL/SQL con parámetros en la base de datos Oracle

En el tutorial anterior, hemos discutido cómo crear un procedimiento almacenado sin parámetros. Pero a veces puede suceder que necesite crear un procedimiento almacenado que acepte parámetros. Después de todo, estas subrutinas están ahí para ayudarlo a obtener la solución de su problema de la manera más fácil posible. Por eso hoy en este blog aprenderemos a crear procedimientos almacenados con parámetros en Oracle Database

Para aquellos que son nuevos en la programación PL/SQL y se preguntan qué es un procedimiento almacenado. No se preocupe, he hecho un blog aparte para usted explicando la teoría fundamental del procedimiento almacenado. Puedes consultar ese blog aquí.

¡Así que veamos la demostración de cómo crear un procedimiento almacenado PL/SQL con parámetros!

Paso 1:Crear el encabezado del procedimiento almacenado

En la cabecera del procedimiento definimos su firma.

CREATE OR REPLACE PROCEDURE emp_sal
(dep_id NUMBER, sal_raise NUMBER) 
IS

El encabezado es bastante similar al que vimos en el tutorial anterior, excepto que esta vez nuestro procedimiento acepta parámetros que son dep_id y sal_raise del tipo de datos NUMBER.

Paso 2:Crear la sección de ejecución del procedimiento almacenado

En la sección de ejecución escribimos todas las sentencias ejecutables que definen el funcionamiento del procedimiento almacenado.

BEGIN
  UPDATE employees SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Para una mejor comprensión, he tratado de hacer este código lo más simple posible. En la sección de ejecución solo tenemos una instrucción DML que es UPDATE. Usando esto, actualizamos la columna de salario de la tabla de empleados.

Puede escribir la lógica comercial de esta manera, luego envolverlos en un procedimiento y llamarlos en su aplicación cuando sea necesario. Esto le dará más control sobre su aplicación. También le evitará escribir el mismo código una y otra vez.

Este procedimiento aceptará dos parámetros, que es la identificación del departamento y el valor numérico para el aumento de salario. El primer parámetro, que es dep_id, se utiliza para determinar el ID del departamento. El segundo parámetro que es sal _ aumento se convertirá en el factor de multiplicación en el aumento de salario.

Para una comprensión más profunda del mismo, vea el video tutorial en mi canal de YouTube. Allí he explicado en detalle cada línea y palabra clave del procedimiento almacenado anterior.

Combinemos todos los fragmentos de código anteriores en uno solo llamado unidad PL/SQL.

Procedimiento almacenado para aumento de salario en todo el departamento

CREATE OR REPLACE PROCEDURE emp_sal( dep_id NUMBER, sal_raise NUMBER) 
IS
BEGIN
  UPDATE emp SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Una vez que haya creado con éxito su procedimiento almacenado, debe llamarlo en su programa o código. En el último tutorial, le mostré diferentes formas de llamar a un procedimiento en la base de datos de Oracle. Puede consultar ese tutorial para lo mismo.

Ese es el tutorial sobre cómo crear un procedimiento almacenado PL/SQL con parámetros en Oracle Database. Compártalo en sus redes sociales y ayude a otros a aprender.

Es todo por hoy. ¡Que tengas un gran día!