Re: Función

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Mario Soto Cordones <msotocl(at)gmail(dot)com>
Cc: "'Lista PostgreSQL'" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Función
Date: 2009-06-30 14:28:07
Message-ID: 20090630142807.GC4661@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Mario Soto Cordones escribió:

> CREATE OR REPLACE FUNCTION "public"."inspropiedades" (char, smallint,
> smallint, integer, smallint, smallint, smallint, varchar, varchar, varchar,
> smallint, smallint, smallint, varchar, varchar, varchar, varchar, varchar)
> RETURNS "pg_catalog"."void" AS

El problema son esos "smallint" que le pusiste. Cuando se resuelven los
argumentos, aquellos que son numéricos toman tipo "int". Haz un cast al
momento de llamar la función:

> select * from inspropiedades('SA', 1::smallint, 1::smallint, 109, 1::smallint, 1::etc,
> 3, 'CASA QUINTA CARMEN', 'DIRECCION', 'CALLE CARMEN', 30, 13,
> 1,'1-6','1-6','123456','REFERENCIA','MSOTO')

(El 109 no es necesario porque el tipo es integer).

Una alternativa menos molesta es declarar la función con argumentos int:

> CREATE OR REPLACE FUNCTION "public"."inspropiedades" (char, integer,
> integer, integer, integer, integer, integer, varchar, varchar, varchar,
> integer, integer, integer, varchar, varchar, varchar, varchar, varchar)
> RETURNS "pg_catalog"."void" AS

--
Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34J
"No tengo por qué estar de acuerdo con lo que pienso"
(Carlos Caszeli)

In response to

  • Función at 2009-06-30 00:40:40 from Mario Soto Cordones

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jose Luis Balle 2009-06-30 14:34:05 H1N1
Previous Message Alvaro Herrera 2009-06-30 14:24:26 Re: ESPACIOS EN BLANCO EN UNA QUERY