este problema se puede resolver de diversas formas, pero nosotros te mostramos la que para nosotros es la respuesta más completa.
Solución:
El procedimiento almacenado no solo devolverá el resultado del último SELECT. En realidad, debe devolver el valor:
CREATE OR REPLACE FUNCTION fun() RETURNS text AS $$
BEGIN
--- ....
RETURN(SELECT dblink_disconnect());
END
$$ LANGUAGE plpgsql;
Está recibiendo el error porque Postgres espera que la función devuelva algo de tipo texto, pero su función no devuelve nada.
La respuesta de SL2 fue correcta, pero puede escribirla de forma abreviada:
CREATE OR REPLACE FUNCTION fun() RETURNS text AS $$
BEGIN
--- ....
RETURN(SELECT dblink_disconnect());
END
$$ LANGUAGE plpgsql;
No se te olvide difundir esta sección si si solucionó tu problema.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)