From: | "Ana Claudia Smail" <anasmail(at)unnoba(dot)edu(dot)ar> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | RE: [pgsql-es-ayuda] consulta función |
Date: | 2011-11-22 14:13:38 |
Message-ID: | 01ab01cca920$ee9547b0$cbbfd710$@unnoba.edu.ar |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Efectivamente, está mal el tipo que devuelve la función!!! Se me pasó por
alto, al cambiar lo que devolvía el select. Muchas gracias!!!!
ANA
-----Mensaje original-----
De: pgsql-es-ayuda-owner(at)postgresql(dot)org
[mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org] En nombre de Rafael Martinez
Enviado el: martes, 22 de noviembre de 2011 10:42 a.m.
Para: Ana Claudia Smail
CC: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] consulta función
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 11/22/2011 02:15 PM, Ana Claudia Smail wrote:
> Hola a todos!
>
> Estoy teniendo un problema con una función en progresql 8.4:
>
> CREATE OR REPLACE FUNCTION getLibres(varchar(20), varchar(20)) RETURNS
> SETOF tabla1 AS
>
[.......]
> Cuando ejecuto SELECT * FROM getLibres('campo1',NULL);
>
> Me tira el siguiente error:
>
> ERROR: la sintaxis de entrada no es válida para integer: «campo1»
>
> CONTEXT: PL/pgSQL function "getlibres" line 5 at bucle FOR en torno a
> registros de un SELECT
>
Hola
El problema es que has definido la funcion con "RETURNS SETOF tabla1" y no
estas devolviendo un set de la tabla "tabla1".
Devuelves VARCHAR(255),COUNT(*).
No mandas la definicion de la tabla "tabla1", pero probablemente la primera
columna de esta tabla es "campo1"(integer) y tu funcion esta devolviendo
como primera columna un varchar.
Para arreglar esto tendrias que definir un nuevo tipo (TYPE) [1] con
VARCHAR(255),INTEGER y cambiar la definicion de la funcion para que devuelva
un SETOF de este tipo y no de la tabla "tabla1".
[1] http://www.postgresql.org/docs/9.1/interactive/sql-createtype.html
- --
Rafael Martinez Guerrero
Center for Information Technology
University of Oslo, Norway
PGP Public Key: http://folk.uio.no/rafael/ -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk7LppQACgkQBhuKQurGihTXyQCcC22Y/+HjkDvS7/DMCLBCYlyO
3f0An0oBO42H0d3T9+supyNJWx7ASUWf
=hYZE
-----END PGP SIGNATURE-----
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Guillermo O. Burastero | 2011-11-22 14:14:38 | Re: [pgsql-es-ayuda] ¿Que opinan de esto? |
Previous Message | Alejandro Carrillo | 2011-11-22 13:59:01 | Re: [pgsql-es-ayuda] consulta función |