Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Re: [pgsql-es-ayuda] Función



El 29 de junio de 2009 19:40, Mario Soto Cordones<msotocl(at)gmail(dot)com> escribió:
>
>
> Hola Lista, tengo la siguiente función:
>
>
>
> 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
>
> $body$
>
> INSERT INTO epropiedades_propiedades( id_estado, co_empresa, co_filial,
> co_propiedad, co_tipo, co_estado, ty_operacion, nb_propiedad, tx_direccion,
> tx_calle, co_comuna,
>
>  co_region, co_provincia,rut_propietario, rut_corredor, tx_numero,
> tx_referencia, id_usuario)
>
>  VALUES ($1, $2, $3, $4, $5,$6, $7, $8, $9, $10,$11,$12,$13, $14,
> $15,$16,$17,$18);
>
> $body$
>
> LANGUAGE 'sql'
>
> VOLATILE
>
> RETURNS NULL ON NULL INPUT
>
> SECURITY INVOKER
>
> COST 100;
>
>
>
> La ejecuto de la siguiente forma:
>
>
>
> select * from inspropiedades('SA', 1, 1, 109, 1, 1, 3, 'CASA QUINTA CARMEN',
> 'DIRECCION', 'CALLE CARMEN', 30, 13,
> 1,'1-6','1-6','123456','REFERENCIA','MSOTO')
>

PostgreSql es algo estricto con los tipos de datos, haz un cast
explícito a tus parámetros de la función, y otra cosa, la forma en que
se esta llamando la función no es correcta, ya que el tipo de retorno
de la función es void, no un conjunto de registros. De tal forma
que para llamarla quedaría así: select inspropiedades( ... );


  • References:

Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group