From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Guillermo O(dot) Burastero <linux(dot)gb(at)gmail(dot)com> |
Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: insert con serial |
Date: | 2011-12-08 01:20:43 |
Message-ID: | 1323307128-sup-512@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Excerpts from Guillermo O. Burastero's message of mié dic 07 21:42:58 -0300 2011:
> Hola
>
> El día 6 de diciembre de 2011 17:52, Gilberto Castillo Martínez
> <gilberto(dot)castillo(at)etecsa(dot)cu> escribió:
> >
> > El mar, 06-12-2011 a las 14:46 -0600, Marco Vinicio Jimenez Rojas
> > escribió:
> >> El insert sería:
> >> insert into Tabla(campo2, campo3) values(5,"01/01/2011")
> >>
> > Tan solo debes consulta el currenval de la secuencia que se genero.
>
> Esto está mal, el valor corriente de la secuencia puede haber cambiado
> por lo tanto diferir de aquel al que se insertó, sobre todo en un
> entorno de inserciones concurrentes.
No, Gilberto está en lo correcto; en cada sesión, currval() está
asegurado de retornar el valor que nextval() entregó en esa sesión la
última vez, y por lo tanto es el valor correcto insertado. Obviamente,
si llamas currval() en una sesión distinta, podría entregar un valor
diferente o incluso dar un error.
--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
From | Date | Subject | |
---|---|---|---|
Next Message | Alejandro Carrillo | 2011-12-08 01:25:09 | Re: Quiero unirme a la lista |
Previous Message | Guillermo O. Burastero | 2011-12-08 00:42:58 | Re: insert con serial |