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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 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
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