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

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 (view raw or flat)
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

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2006-01-27 14:10:20
Subject: Re: PL/PGSQL con FOR
Previous:From: Alvaro HerreraDate: 2006-01-27 13:23:26
Subject: Re: Funci?==?iso-8859-1?Q?ón sencilla

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