
No existe la columna
Publicado por Carlos (3 intervenciones) el 22/10/2016 15:53:27
Buenas tardes,
estoy estancado creando una función que retorne un mensaje según un valor pasado por parámetro. La función es esta:
CREATE OR REPLACE FUNCTION tipo_actividad (valor integer)
RETURNS text AS
$BODY$
DECLARE
msg text;
BEGIN
CASE valor
WHEN 1 THEN
msg := "Solo hay una actividad";
WHEN 2,3,4 THEN
msg := "Hay menos de cinco actividades";
ELSE
msg := "Hay 5 o más actividades";
END CASE;
RETURN msg;
END;
$BODY$
LANGUAGE plpgsql;
Cuando ejecuto la función pasando como parámetro cualquier número (integer) , en este caso (1) me sale el error siguiente:
ERROR: no existe la columna «Solo hay una actividad»
LINE 1: SELECT "Solo hay una actividad"
^
QUERY: SELECT "Solo hay una actividad"
CONTEXT: PL/pgSQL function tipo_actividad(integer) line 7 at asignación
********** Error **********
ERROR: no existe la columna «Solo hay una actividad»
Estado SQL:42703
Contexto:PL/pgSQL function tipo_actividad(integer) line 7 at asignación
Si alguien me puede decir como puedo arreglarlo, le estaría muy agradecido.
Muchas gracias
estoy estancado creando una función que retorne un mensaje según un valor pasado por parámetro. La función es esta:
CREATE OR REPLACE FUNCTION tipo_actividad (valor integer)
RETURNS text AS
$BODY$
DECLARE
msg text;
BEGIN
CASE valor
WHEN 1 THEN
msg := "Solo hay una actividad";
WHEN 2,3,4 THEN
msg := "Hay menos de cinco actividades";
ELSE
msg := "Hay 5 o más actividades";
END CASE;
RETURN msg;
END;
$BODY$
LANGUAGE plpgsql;
Cuando ejecuto la función pasando como parámetro cualquier número (integer) , en este caso (1) me sale el error siguiente:
ERROR: no existe la columna «Solo hay una actividad»
LINE 1: SELECT "Solo hay una actividad"
^
QUERY: SELECT "Solo hay una actividad"
CONTEXT: PL/pgSQL function tipo_actividad(integer) line 7 at asignación
********** Error **********
ERROR: no existe la columna «Solo hay una actividad»
Estado SQL:42703
Contexto:PL/pgSQL function tipo_actividad(integer) line 7 at asignación
Si alguien me puede decir como puedo arreglarlo, le estaría muy agradecido.
Muchas gracias
Valora esta pregunta


0