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

Re: [pgsql-ayuda] Funciones SQL + oferta de chamba (local, cd. de =?iso-8859-1?Q?m=E9xico?=)

From: Jesus Aneiros <aneiros(at)jagua(dot)cfg(dot)sld(dot)cu>
To: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [pgsql-ayuda] Funciones SQL + oferta de chamba (local, cd. de =?iso-8859-1?Q?m=E9xico?=)
Date: 2000-07-13 17:14:15
Message-ID: Pine.LNX.4.10.10007131306320.20053-100000@jagua.cfg.sld.cu (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Ruben voy a tratar de ayudarte.

On Wed, 12 Jul 2000, Rub� Marrero wrote:

> insert into table a values('ABC','qwerty');

Aqui es insert into a (sobra el table)

> create function up_date(text,text) returns a as '
> 	update a set dos=''$2'' where uno=''$1'';
> 	select * from a' as 'SQL';
> select up_date('ABC','el nuevo valor');
> 
> y en lugar de regresarme un registro con el campo dos cambiado, me
> regresa un numero extra�!, no coincide con el oid del registro y
> evidentemente no cambia nada, cuando le doy select * from a, solo me da
> el valor original.

Debe ser dos = $2 y no ''$2'', lo mismo con el $1.

Lo otro es que no puedes retornar tipos compuestos sin manejarlos como
sencillos. Fijate que estas retornando todos los registros de a. Prueba

CREATE FUNCTION up_date(TEXT, TEXT) 
RETURNS OID
AS 'UPDATE abc SET dos = $2 WHERE uno = $1;
    SELECT OID FROM abc WHERE dos = $2;'
LANGUAGE 'SQL';

Te retornara el OID del registro actualizado (claro partiendo que hay uno
solo que cumple la condicion del where.

Saludos, Jesus.

--------- Pie de mensaje -------------------------------------------
Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
Cancelar inscripcion:
mail to: majordomo(at)tlali(dot)iztacala(dot)unam(dot)mx
text   : unsubscribe pgsql-ayuda


In response to

pgsql-es-ayuda by date

Next:From: Jesus AneirosDate: 2000-07-13 19:12:24
Subject: Re: [pgsql-ayuda] Campo autonumerico.
Previous:From: Bolo LacertusDate: 2000-07-13 17:01:36
Subject: Re: [pgsql-ayuda] Funciones SQL + oferta de chamba (local, cd. de =?iso-8859-1?Q?m=E9xico?=)

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group