
Consulta funcion PLSQL
Publicado por Cristian Alejandro Saavedra Toro (2 intervenciones) el 27/06/2012 10:09:09
Buenas a todos:
Tengo la siguiente duda y es la cual no puedo implementar en mi codigo un if ya que tal vez no se como implementarlo pero la idea dice algo asi:
Necesito crear una funcion que obtenga el nombre del departamento por cada departamento procesado. Si para el departamento procesado no existe, entonces tu funcion debe retornar el varchar2 'DEPARTAMENTO SIN NOMBRE'.
Coloco el codigo de lo que he hecho para ver si me corrigen mi implementacion:
lo que esta en -- esta comentado ya que al momento de implementarlo me arroja un warning ya que este no devuelve ningun valor y no se me ha ocurrido otras maneras de como hacer que mi varchar2 devuelva el valor departamento no existe si este no existiera en la busqueda.
ojala pudieran ayudarme con esta duda. les estare bastante agradecidos
Tengo la siguiente duda y es la cual no puedo implementar en mi codigo un if ya que tal vez no se como implementarlo pero la idea dice algo asi:
Necesito crear una funcion que obtenga el nombre del departamento por cada departamento procesado. Si para el departamento procesado no existe, entonces tu funcion debe retornar el varchar2 'DEPARTAMENTO SIN NOMBRE'.
Coloco el codigo de lo que he hecho para ver si me corrigen mi implementacion:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CREATE OR REPLACE FUNCTION fn_ObtenerNombreDepartamento
(n_departamento IN varchar2 )
RETURN varchar2
AS
nombre_departamento varchar2(30);
BEGIN
SELECT department_name
INTO nombre_departamento
FROM departments
WHERE department_name = n_departamento;
-- IF n_departamento = null THEN
--dbms.output.putline('DEPARTAMENTO NO EXISTE');
-- END IF;
RETURN nombre_departamento;
END;
lo que esta en -- esta comentado ya que al momento de implementarlo me arroja un warning ya que este no devuelve ningun valor y no se me ha ocurrido otras maneras de como hacer que mi varchar2 devuelva el valor departamento no existe si este no existiera en la busqueda.
ojala pudieran ayudarme con esta duda. les estare bastante agradecidos
Valora esta pregunta


0