Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

funcion retorna tabla

Estas en el tema de funcion retorna tabla en el foro de PostgreSQL en Foros del Web. Hola, estoy haciendo una funcion que me debe retornar un conjunto de elementos que he agrupado en un tipo nuevo que he creado. El problema ...
  #1 (permalink)  
Antiguo 15/04/2007, 21:37
 
Fecha de Ingreso: abril-2007
Mensajes: 1
Antigüedad: 17 años
Puntos: 0
funcion retorna tabla

Hola, estoy haciendo una funcion que me debe retornar un conjunto de elementos que he agrupado en un tipo nuevo que he creado. El problema esta en que la funcion es ejecutada correctamente cuando en el EMS PostgreSQL manager le doy Execute en el lado izquierdo de la funcion, pero cuando trato de ejecutar el script SELECT "FListadoDepartamentos"() me da un error. Debajo les pongo la funcion y el error. Espero tu respuesta.
Saludos
Dayron

CREATE OR REPLACE FUNCTION "public"."FListadoDepartamentos" () RETURNS SETOF "public"."dptolistado" AS
$body$
declare
tabla dptolistado%ROWTYPE;
begin
for tabla in SELECT
"Departamento"."ID_Departamento",
"Departamento"."Descripcion",
"Departamento"."Nombre",
"Profesor"."Categoria_Cientifica",
"Profesor"."Graduado_De",
"Persona"."Solapin",
"Persona"."PNombre",
"Persona"."SNombre",
"Persona"."PApellido",
"Persona"."SApellido",
"Persona"."CI"
FROM
"Departamento"
INNER JOIN "Profesor" ON "Departamento"."SolapinJDpto" = "Profesor"."SolapinProf"
INNER JOIN "Persona" ON "Profesor"."SolapinProf" = "Persona"."Solapin" loop
return next tabla;
end loop;
return;
end
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

ERROR: set-valued function called in context that cannot accept a set
CONTEXT: PL/pgSQL function "FListadoDepartamentos" line 20 at return next
  #2 (permalink)  
Antiguo 21/04/2007, 13:45
 
Fecha de Ingreso: abril-2007
Mensajes: 1
Antigüedad: 17 años
Puntos: 0
Re: funcion retorna tabla

cuando te respondan me avisas
  #3 (permalink)  
Antiguo 27/04/2007, 15:12
 
Fecha de Ingreso: agosto-2006
Mensajes: 179
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: funcion retorna tabla

No se complique.

Utilice el tipo RECORD de postgresql, con este tipo se puede devolver la tabla completa tambien.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:04.