Carlos Chamorro
1. Con la funcion
CREATE OR REPLACE FUNCTION retornar_cursor(text)
RETURNS SETOF RECORD AS '
DECLARE
rs RECORD;
sql TEXT; --para el armado de tu sql
BEGIN
sql := 'SELECT f0, f1, f2, f3,.....fn FROM table';
FOR rs IN EXECUTE sql LOOP
RETURN NEXT rs;
END LOOP;
RETURN NULL;
END;
' LANGUAGE plpgsql;
2. La invocacion
SELECT * FROM retornar_cursor ('data') as (f00 VARCHAR, f01 INT2, f02
CHAR, f03 FLOAT8,....f0n tipo de dato)
Observaciones
-Tus campos en la invocacion lo vas a llamar como quieras
-Con el tipo de datos debes tener cuidado, ya que por defecto envia el tipo
con que fue creado, por ejemplo nombre de tipo VARCHAR, te retorna VARCHAR,
al menos que en tu sentencia sql realices un CAST(nombre as CHAR) al tipo de
dato,
Leonar Uzcategui
LOTELIN SISTEMAS CA
Analista programador
58 0414 7472894
Merida - Venezuela
_______________________________________________
Pgsql mailing list
Pgsql@???
https://listas.linux.org.ar/mailman/listinfo/pgsql