From: | "Felipe E(dot) Barousse B(dot)" <fbarousse(at)piensa(dot)com> |
---|---|
To: | Fernando Romo <pop(at)cofradia(dot)org> |
Cc: | pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx |
Subject: | Re: [Pgsql-ayuda] Como saco el valor de un serial despues de una inserción de manera eficiente |
Date: | 2002-03-01 21:02:25 |
Message-ID: | 1015016546.868.107.camel@monster.piensa.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola Fernando:
Es muy fácil:
Suponiendo que tengas la tabla:
id_dato integer not null default nextval('tabla_id_dato_seq'::text)
datos text
(El serial es el id_dato y por supuesto tiene su indice
"tabla_id_dato_pkey")
La secuencia de "seriales" se guarda en tabla_id_dato_seq y puedes
obtener el valor que se acaba de generar despues de un insert con:
select last_value from tabla_id_datos_seq;
La otra forma de usarlo es usando la funcion de Postgres "currval()"
JUSTO DESPUES del INSERT, (ejemplo tomado del manual):
INSERT INTO person (name) VALUES ('Blaise Pascal');
new_id = output of "SELECT currval('person_id_seq')";
Dato adicional: si modificas la secuencia (un DROP SEQUENCE y luego
CREATE SECUENCE...) puedes lograr alterar los "seriales".
Espero se entienda con mi ejemplo de "table" y "id_dato"
Un saludo
Felipe Barousse
Bufete Consultor de Mexico - Piensa Technologies.
www.piensa.com
On Fri, 2002-03-01 at 02:27, Fernando Romo wrote:
> Estimados:
>
> Necesito insertar un registro en una tabla que tiene un tipo de campo
> serial y sacar inmediatamente el valor del registro que se acaba de
> actualizar.
>
> Por ejemplo en MS SQL uno usa una variable llamada @@IDENTITY que trae
> el valor de este campo despues de un INSERT.
>
> En pgsql hay algo similar?
>
> Saludos... El Pop
>
>
>
> _______________________________________________
> Pgsql-ayuda mailing list
> Pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
> http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Felipe E. Barousse B. | 2002-03-01 21:30:48 | Re: [Fwd: Re: [Pgsql-ayuda] Como saco el valor de un serial despues de una inserción de manera eficiente] |
Previous Message | Manuel Sugawara | 2002-03-01 20:57:04 | Re: [Pgsql-ayuda] Como saco el valor de un serial despues de una inserción de manera eficiente |