2014-04-08 8:33 GMT-05:00 Flavio Roche <[email protected]>:
>
> Buenos dias, necesito saber el tipo de dato que devuelve una función, de 
> momento utilizo el procedimiento
> pg_catalog.pg_get_function_result(p.oid) para conocer esto, pero no me sirve 
> ya q en caso de que la función se retorne
> como setof el procedimiento entonces me devolveria SETOF tipodato, y solo 
> necesito el tipo de dato, y no me conviene
> parsear el string que devuelve el procedimiento 
> pg_catalog.pg_get_function_result para quitar la palabra SETOF cuando lo
> tenga.
>
> Hay alguna otra forma de saber que tipo de dato devuelve una función y 
> devuleva el tipo de dato solamente??
>

?

podrías ver en pg_proc el campo prorettype, aunque no estoy muy seguro
de que tu idea sea sana. por ejemplo la función podría retornar record
en cuyo caso no sabras mágicamente que retorna a menos que examines el
campo proallargtypes[] y le quites proargtypes[].

en todo caso lo que te dije primero lo puedes hacer así:

select prorettype::regtype::text from pg_proc where proname = 'nombre_funcion';

-- 
Jaime Casanova         www.2ndQuadrant.com
Professional PostgreSQL: Soporte 24x7 y capacitación
Phone: +593 4 5107566         Cell: +593 987171157

-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a