InicioArticulos y noticiasBases de datosProgramaciónForosInternetServiciosContratacionEmail
Tutorial PL/SQL
Introducción a PLSQL
Programación con PL/SQL
Fundamentos de PL/SQL
Tipos de datos en PL/SQL
Operadores en PL/SQL
Estructuras de control en PL/SQL
Bloques PL/SQL
Cursores en PL/SQL
Cursores Implicitos en PL/SQL
Cursores Explicitos en PL/SQL
Cursores de actualización en PL/SQL
Excepciones en PL/SQL
Excepciones personalizadas en PL/SQL
Propagacion de excepciones en PL/SQL
Subprogramas en PL/SQL
Procedimientos almacenados en PL/SQL
Funciones en PL/SQL
Triggers en PL/SQL
Subprogramas en bloques anónimos
Paquetes en PL/SQL
Registros PL/SQL
Tablas PL/SQL
Tipo VARRAY
BULK COLLECT
Transacciones con PL/SQL
Transacciones autónomas
SQL Dinamico
Funciones integradas de PL/SQL
Secuencias
PL/SQL y Java
También puedes ver ...
Excepciones personalizadas en PL/SQL
Como conectar a ORACLE con Java
Recuperar datos BLOB de ORACLE
Trabajar con datos de tipo BLOB en ORACLE
PL/SQL y Java
Secuencias
Transacciones autónomas
SQL Dinamico
Funciones integradas de PL/SQL
Transacciones con PL/SQL

Afiliados
La Web del programador
MundoProgramacion


 

Funciones en PL/SQL

    Una función es un subprograma que devuelve un valor.

    La sintaxis para construir funciones es la siguiente:


CREATE [OR REPLACE]
FUNCTION <fn_name>[(<param1> IN <type>, <param2> IN <type>, ...)]
RETURN <return_type>
IS
  result <return_type>;
BEGIN

  return(result);
[EXCEPTION]
  -- Sentencias control de excepcion
END [<fn_name>];

   El uso de OR REPLACE permite sobreescribir una función existente. Si se omite, y la función existe, se producirá, un error.

    La sintaxis de los parámetros es la misma que en los procedimientos almacenado, exceptuando que solo pueden ser de entrada.

    Ejemplo:


CREATE
OR REPLACE
FUNCTION fn_Obtener_Precio(p_producto VARCHAR2)
RETURN NUMBER
IS
  result NUMBER;
BEGIN
  SELECT PRECIO INTO result
FROM PRECIOS_PRODUCTOS
WHERE CO_PRODUCTO = p_producto;
  return(result);
EXCEPTION
WHEN NO_DATA_FOUND THEN
return 0;
END ;

    Si el sistema nos indica que el la función se ha creado con errores de compilación podemos ver estos errores de compilacion con la orden SHOW ERRORS en SQL *Plus.

    Una vez creada y compilada la función podemos ejecutarla de la siguiente forma:


DECLARE
Valor NUMBER;
BEGIN
Valor := fn_Obtener_Precio('000100');

END;

    Las funciones pueden utilizarse en sentencias SQL de manipulación de datos (SELECT, UPDATE, INSERT y DELETE):


SELECT CO_PRODUCTO,
DESCRIPCION,
fn_Obtener_Precio(CO_PRODUCTO)
FROM PRODUCTOS;

 


Inicio | Tutorial PL/SQL Procedimientos almacenados en PL/SQLTutorial PL/SQLTriggers en PL/SQL Versión para imprimir Foros de consulta


Añadir comentario ... Para preguntar utiliza los foros
Autor:

Título:


Para preguntar utiliza los foros.



Inicio | Tutorial PL/SQL Procedimientos almacenados en PL/SQLTutorial PL/SQLTriggers en PL/SQL Versión para imprimir

Funciones en PL/SQL
Autor: Pedro Herrarte Sánchez
Visitas: 51314 Fecha de publicación: 10/07/2006
Pedro Herrarte, es consultor independiente, ofreciendo sercivios de consultoría, análisis, desarrollo y formación.

Posee mas de diez años de experiencia trabajando para las principales empresas de España.

Es especialista en tecnologías .NET, entornos Web, bases de datos (SQL Server y ORACLE) e integración de sistemas.

Es experto en desarrollo (C#, ASP.NET, VB.Net, T-SQL, PL/SQL, , ASP, CGI , C, Pro*C, Java, Essbase, Vignette, PowerBuilder y Visual Basic ...) y bases de datos (SQL Server y ORACLE).

Es fundador, diseñador y programador de www.devjoker.com.




Visitas: 28 | Comentarios: 0 | Archivo: Articulos
Categorias: Transact-SQL|LinQ
Visitas: 442 | Comentarios: 0 | Archivo: Articulos
Categorias: Visual Basic .NET|C#|ASP.NET|ASP.NET|Programación|ADO.NET
27/09/2008 Navegando ....
Visitas: 107 | Comentarios: 0 | Archivo: Articulos
Categorias: Humor
Visitas: 244 | Comentarios: 0 | Archivo: Articulos
Categorias: Visual Basic .NET|C#|ASP.NET|ASP.NET|Programación|WCF
Visitas: 1107 | Comentarios: 0 | Archivo: Articulos
Categorias: C#
Visitas: 244 | Comentarios: 0 | Archivo: Articulos
Categorias: JavaScript|ASP.NET
Visitas: 727 | Comentarios: 0 | Archivo: Articulos
Categorias: Windows XP|Linux|Windows Vista
Visitas: 493 | Comentarios: 0 | Archivo: Articulos
Categorias: Linux|BSD
Visitas: 257 | Comentarios: 0 | Archivo: Articulos
Categorias: Programación|Actualidad
18/08/2008 SQL Server 2008
Visitas: 1237 | Comentarios: 1 | Archivo: Articulos
Categorias: Transact-SQL

Útimos temas recibidos en los foros ...
tutorial por Maria ... [SQL] 1 15/10/2008
autogenerado essalud codigo por tavo1970 ... [Visual Basic .NET] 26 27/12/2006
Hacer un programa de una nave en JAVA por Pablo ... [Java] 1 19/09/2008
ing. de sistemas por jihur ... [ORACLE] 0 15/10/2008
varchar2(1) vs varchar(1) por edu ... [ORACLE] 0 15/10/2008
variable escalar por peyin ... [Visual Basic .NET] 0 15/10/2008
necesito a por la rubia ... [Actualidad] 2 14/10/2008
descargar tutorial C# por afmp ... [C#] 1 14/10/2008
Conexion a BD por Maurito22 ... [Visual Basic .NET] 4 19/06/2007
insertar un tipo LONG en tabla por angustias ... [ORACLE] 4 14/10/2008
Recuperar contraseña automatica de un usario por jhors ... [ASP.NET] 0 15/10/2008
Problema Eventos del Mouse por Miguel ... [C#] 2 20/10/2007

Access CGI JSP ORACLE UNIX
Actualidad HTML/DHTML/XHTML LINUX PHP Visual Basic .NET
ASP ISAPI MS DOS Power Builder Visual Basic 6.0
ASP.NET Java mySQL SQL WIN 98/NT/2000/XP
C# JavaScript Opinion SQL Server

devjoker  Te recomendamos además ...
12/06/2007 Estructuras de control en Transact SQL    forma parte de...Tutorial de Transact SQL
16/10/2006 Delegados y eventos    forma parte de...Tutorial C#
15/09/2008 Reemplazar __doPostBack
22/10/2005 Componentes del lenguaje SQL    forma parte de...Tutorial SQL
19/09/2007 Triggers en Transact SQL    forma parte de...Tutorial de Transact SQL
10/06/2007 Operadores en Transact SQL    forma parte de...Tutorial de Transact SQL
01/01/2006 Consultas agregadas    forma parte de...Tutorial SQL
22/10/2005 Indices    forma parte de...Tutorial SQL
22/10/2005 El lenguaje SQL    forma parte de...Tutorial SQL
22/10/2005 Consultas combinadas. JOINS    forma parte de...Tutorial SQL

 

Encuesta
¿A que perfil te adaptas mejor?
[Ver] [Votar]