PL/SQL Packages

En pl sql existen los famosos packages(paquetes) los cuales no son mas que un grupo de funciones y SP (stored procedures) que nos ayudan a encapsular funcionalidad, lo curioso de en los paquetes es que se definen un body(cuerpo) y una spec(especificacion)  en java seria como si la spec fuera una interface y el cuerpo la implementacion de esta jeje, en el spec puede definir las constantes, los tipos de datos(types) , colecciones, cursores, funciones etc..pero en fin a continuacion un ejemplo de un paquete con 2 funciones:

SPEC

CREATE OR REPLACE PACKAGE nombre_paquete AS

--definicion de la funcion 1 recibe de paremetro un number y regresa un varchar
function funcion1(id number) return varchar;

--definicion de la funcion 2 recibe de parametro un varchar y regresa un number
function funcion2(name varchar) return number;

END nombre_paquete;

BODY

CREATE OR REPLACE PACKAGE BODY nombre_paquete AS

function funcion1(id number)  return varchar is
v_nombre varchar; --la variable a regresar

begin --empieza el bloque
--se hace un into variable para asignarle el valor encontrado
select e.nombre into v_nombre from empleados e where e.id = id;

return v_nombre; --y un return
end; --termina el bloque

function funcion2(name varchar) return number is
v_id number;
begin
select e.id into v_id from empleados e where e.name like name;
return v_id;
end;

END nombre_paquete; --finaliza el paquete

Espero que le sirva a alguien 😛

saludos

Comentarios

  1. Información Bitacoras.com…

    Valora en Bitacoras.com: En pl sql existen los famosos packages(paquetes) los cuales no son mas que un grupo de funciones y SP (stored procedures) que nos ayudan a encapsular funcionalidad, lo curioso de en los paquetes es que se definen un body(cuer…..

  2. Fantasmagorico dice:

    Mi estimado asincrono el mundo de oracle es otro rollo, no debes de mezclar agua con aceite.

    Existen diferentes issues entre los motores de base de datos.

    Saludos

    Fantasmagorico…jajajajaajajajajajjaaja