secuencias

From: Leonel Nunez <lnunez(at)enelserver(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: secuencias
Date: 2006-01-27 13:47:48
Message-ID: 43DA2484.4070408@enelserver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

que tal PostgreSQL Fans lovers y users

Ayer una persona Mysql-era me pregunto acerca de las secuencias en
PostgreSQL ya que esta haciendo una app que use varias DB;
y se le hizo raro que si insertas info en una tabla que tiene
secuencias sin tomar en cuenta la secuencia o haciendo referencia al
campo tipo serial
la secuencia no se altera
a lo que pense " claro asi debe ser y si no lo usas asi tienes un
error de diseno y programacion"
ejemplo :

leonel=> create table foo (foo serial , bar varchar );
NOTICE: CREATE TABLE will create implicit sequence "foo_foo_seq" for
serial column "foo.foo"
CREATE TABLE
leonel=> insert into foo values ( 3 , 'aaaa');
INSERT 46686 1
leonel=> insert into foo values ( 4 , 'bbbb');
INSERT 46687 1
leonel=> insert into foo( bar ) values ( 'cccc');
INSERT 46688 1
leonel=> select * from foo;
foo | bar
-----+------
3 | aaaa
4 | bbbb
1 | cccc
(3 rows)

como pueden ver el valor cccc se fue con 1
a lo que esta persona fan de Mysql refuto que en otras DB si se
actualizaba solo, esto es, que al hacer el 3er insert automagicamente
debia poner 5 en el campo serial

a lo que busque por aqui y por alla pero no al mas alla y la
resolucion fue que :

La tabla foo_foo_seq solo se usa como referencia para el dato serial
solo cuando el campo serial no es referenciado en el insert

todo este mailo solo para confirmar mi teoria

Espero sus comentarios

Leonel

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2006-01-27 14:10:20 Re: PL/PGSQL con FOR
Previous Message Alvaro Herrera 2006-01-27 13:23:26 Re: Función sencilla