Re: Obtener el valor de un campo serial luego de un insert

From: "Agustin Ignacio Genoves" <agustingenoves(at)gmail(dot)com>
To: "Alvaro Herrera" <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: "Jaime Casanova" <jcasanov(at)systemguards(dot)com(dot)ec>, "M C" <ayudapostgre(at)gmail(dot)com>, POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Obtener el valor de un campo serial luego de un insert
Date: 2008-12-15 11:39:23
Message-ID: d50beba10812150339n193b4a24g98f71dab2cfb375d@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola, leyendo los mails sobre este problema me encontre con el
comentario de alvaro que dice que usar columnas char es problematico.
No lo sabia y quisiera saber el por que es problematico o una idea
pesima. Gracias

2008/12/15 Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>:
> Jaime Casanova escribió:
>
>> CREATE OR REPLACE FUNCTION agregar_item_menu(integer, integer, integer,
>> bpchar, bpchar)
>> RETURNS integer AS
>> $BODY$
>> DEFINE
>> valor integer;
>> BEGIN
>> INSERT INTO menu (id_padre, posicion, nivel, titulo, pagina)
>> VALUES ($1,$2,$3,$4,$5)
>> RETURNING currval(pg_get_serial_sequence('menu', 'id_item') INTO valor;
>> RETURN valor;
>> END
>> $BODY$
>
> Muy complicado -- ¿por qué no simplemente dejar el RETURNING con la
> columna que corresponde?
>
> INSERT INTO ... VALUES ... RETURNING id_item INTO valor
> RETURN valor
>
>
> A todo esto, nadie comentó que el uso de columnas de tipo char es una
> idea pésima y debe ser evitada.
>
> --
> Alvaro Herrera Valdivia, Chile Geotag: -39,815 -73,257
> "Just treat us the way you want to be treated + some extra allowance
> for ignorance." (Michael Brusser)
> --
> TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gabriel Ferro 2008-12-15 13:44:43 Re: Obtener el valor de un campo serial luego de un insert
Previous Message Mariano Reingart 2008-12-15 05:15:22 Beta de pgInstaller (instalador para windows) en español