Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Oracle/PLSQL: Funciones
Este tutorial de Oracle describe cómo Crear y eliminar funciones En Oracle/PLSQL con sintaxis y ejemplos.
crear función
Puede crear sus propias funciones en Oracle como en otros idiomas.
sintaxis
La sintaxis para crear una función en Oracle es:
CREATE [OR REPLACE] FUNCTION function_name [ (parameter [,parameter]) ] RETURN return_datatype IS | AS [declaration_section] BEGIN executable_section [EXCEPTION exception_section] END [function_name];
Al crear un procedimiento o una función, puede definir parámetros. Se pueden declarar tres tipos de parámetros:
- existe – Los parámetros pueden ser referenciados por procedimientos o funciones. El valor del parámetro no puede ser anulado por un procedimiento o función.
- fuera – Un parámetro no puede ser referenciado por un procedimiento o función, pero el valor de un parámetro puede ser anulado por un procedimiento o función.
- dentro y fuera – Los parámetros pueden ser referenciados por procedimientos o funciones, y los valores de los parámetros pueden ser anulados por procedimientos o funciones.
ejemplo
Veamos un ejemplo de cómo crear una función en Oracle.
Aquí hay un ejemplo de una función de Oracle simple:
CREATE OR REPLACE Function FindCourse ( name_in IN varchar2 ) RETURN number IS cnumber number; cursor c1 is SELECT course_number FROM courses_tbl WHERE course_name = name_in; BEGIN open c1; fetch c1 into cnumber; if c1%notfound then cnumber := 9999; end if; close c1; RETURN cnumber; EXCEPTION WHEN OTHERS THEN raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM); END;
Esta función se llama FindCourse. Tiene un parámetro llamado name_in que devuelve un número. Si se encuentra una coincidencia basada en el nombre del curso, la función devolverá el número del curso. De lo contrario, devuelve 99999.
Luego puede hacer referencia a su nueva función en una declaración SQL como esta:
SELECT course_name, FindCourse(course_name) AS course_id FROM courses WHERE subject="Mathematics";
función de caída
Después de crear una función en Oracle, es posible que deba eliminarla de la base de datos.
sintaxis
La sintaxis para soltar una función en Oracle es:
DROP FUNCTION function_name;
function_name El nombre de la función a eliminar.
ejemplo
Veamos un ejemplo de cómo eliminar una función en Oracle.
Por ejemplo:
DROP FUNCTION FindCourse;
Este ejemplo elimina la función denominada FindCourse.