From: | Yudelsy Castellón García <yude(at)cav(dot)desoft(dot)cu> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | enviar a lista de distribución de postgres |
Date: | 2009-12-12 16:25:39 |
Message-ID: | 000301ca7b47$be2af060$3a80d120$@desoft.cu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola a todos, estoy tratando de hacer una función en postgres con el
objetivo de obtener valores de una vista pero la función me da error. Pongo
aquí el código de la función para que la vean y si alguien puede me de una
solución, esto es una prueba que estoy haciendo para ver si me funciona,
luego le añadiré más funcionalidad para que de verdad la función sea
operativa y devuelva lo que me hace falta.
CREATE OR REPLACE FUNCTION prueba(aid_unidad integer)
RETURNS SETOF vw_nmunidad_org AS
$$
DECLARE control integer;
cadena varchar;
unidad integer;
padre integer;
s varchar;
r_s vw_nmunidad_org%rowtype;
BEGIN
control=0;
cadena='';
unidad=aid_unidad;
s='SELECT * FROM vw_nmunidad_org';
s = s||';';
raise notice '%', s;
for r_s in
execute s
loop
return next r_s;
end loop;
return;
END;
$$
LANGUAGE 'plpgsql';
El error que da es el siguiente:
NOTICE: SELECT * FROM vw_nmunidad_org;
ERROR: set-valued function called in context that cannot accept a set
CONTEXT: PL/pgSQL function "eliminar" line 39 at RETURN NEXT
********** Error **********
ERROR: set-valued function called in context that cannot accept a set
SQL state: 0A000
Context: PL/pgSQL function "eliminar" line 39 at RETURN NEXT
Saludos,
Ing. Esneiker Enriquez Cabrera.
Excelencia en Software.
Desoft S.A. en Ciego de Ávila.
Joaquín de Agüero Esq. Calle 2. Ciego de Ávila. Cuba.
email: <mailto:eenriquez(at)cav(dot)desoft(dot)cu> eenriquez(at)cav(dot)desoft(dot)cu
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2009-12-12 20:23:35 | Re: [pgsql-es-ayuda] enviar a lista de distribución de postgres |
Previous Message | Alvaro Herrera | 2009-12-10 19:34:21 | Re: problema con PQExec() |