Ver Mensaje Individual
  #4 (permalink)  
Antiguo 23/12/2012, 21:41
onslaught
 
Fecha de Ingreso: abril-2009
Mensajes: 10
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Consulta de funciones (stored procedures)

Hola de nuevo, despues de algunas fiestas navideñas y mas trabajo pendiente por fin pude crear la funcion que me devolviera varios sets de datos, es un poco diferente a lo que Huesos52 me habia explicado pero el resultado es el que necesito, el codigo quedo asi:

Código:
CREATE OR REPLACE FUNCTION datos_generales()
  RETURNS SETOF refcursor AS
$BODY$
DECLARE
carrerasRC refcursor;
especialidadesRC refcursor;
planesRC refcursor;
BEGIN
open carrerasRC FOR
SELECT * FROM dbo.carreras;
RETURN NEXT carrerasRC;

open especialidadesRC FOR
SELECT * FROM dbo.especialidades;
RETURN NEXT especialidadesRC;

open planesRC FOR
SELECT * FROM dbo.planes_estudio;
RETURN NEXT planesRC;

RETURN;
END;$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100
  ROWS 1000;
Un detalle importante a considerar es que si esta funcion se ejecuta desde pgAdmin regresara una columna con 3 filas que dicen <unnamed portal 1>

Sin embargo cuando se ejecuta desde C# (que es lo unico que he comprobado hasta el momento) el programa muestra correctamente los datos solicitados.

En esta pagina se encuentra una explicacion mas detallada de la situacion:

[URL]http://www.sqlines.com/postgresql/how-to/return_result_set_from_stored_procedure[/URL]

Con esto daria por cerrado este tema, nuevamente Gracias Huesos, la idea que me diste me oriento bastante