Puede crear procedimientos almacenados PL/SQL en un paquete PL/SQL utilizando
el asistente Crear paquete PL/SQL.
Antes de empezar
Asegúrese de que se cumplen los requisitos siguientes:
Acerca de esta tarea
Con el asistente Crear paquete PL/SQL, puede especificar PL/SQL
como lenguaje del procedimiento almacenado y seleccionar una plantilla. Luego, puede
editar la especificación y el cuerpo del paquete en el editor de rutinas.
Procedimiento
Para crear un procedimiento almacenado en un paquete PL/SQL:
- En el Explorador de proyectos de datos, pulse con el botón derecho del ratón en la carpeta Paquetes
PL/SQL de un proyecto y pulse . Se abrirá el asistente Crear paquete PL/SQL.
- Lleve a cabo los pasos que le indique el asistente.
El asistente crea el
paquete PL/SQL y lo añade a la carpeta Paquetes PL/SQL;
la especificación del paquete PL/SQL se abre en el editor de rutinas.
- En la especificación, añada el nombre del procedimiento
almacenado y variables. Por ejemplo:
CREATE OR REPLACE PACKAGE emp_admin
IS
...
PROCEDURE hire_emp (
p_empno NUMBER,
p_ename VARCHAR2,
p_job VARCHAR2,
p_sal NUMBER,
p_hiredate DATE DEFAULT sysdate,
p_comm NUMBER DEFAULT 0,
p_mgr NUMBER,
p_deptno NUMBER DEFAULT 10
);
...
END emp_admin;
- Pulse la pestaña Cuerpo y edite el cuerpo del paquete PL/SQL
para añadir el procedimiento almacenado. Ejemplo:
--
-- Cuerpo del paquete 'emp_admin'.
--
CREATE OR REPLACE PACKAGE BODY emp_admin
IS
--
...
-- Procedimiento que inserta un nuevo registro de empleado en la tabla 'emp'.
--
PROCEDURE hire_emp (
p_empno NUMBER,
p_ename VARCHAR2,
p_job VARCHAR2,
p_sal NUMBER,
p_hiredate DATE DEFAULT sysdate,
p_comm NUMBER DEFAULT 0,
p_mgr NUMBER,
p_deptno NUMBER DEFAULT 10
)
AS
BEGIN
INSERT INTO emp(empno, ename, job, sal, hiredate, comm, mgr, deptno)
VALUES(p_empno, p_ename, p_job, p_sal,
p_hiredate, p_comm, p_mgr, p_deptno);
END;
...
--
END;
- Guarde el paquete.
Se puede sobrecargar un procedimiento almacenado PL/SQL solamente
si todas las rutinas del mismo nombre y tipo residen en el mismo
paquete PL/SQL. En un paquete PL/SQL, un procedimiento o
función puede ser sobrecargado por otro procedimiento o función del
mismo tipo y nombre, pero con un número diferente de parámetros. Un paquete sobrecargado o función sobrecargada de un paquete
PL/SQL muestra el número de sus parámetros entre paréntesis:
Procedure02(1)
Procedure02(2)