Re: secuencias

From: Juan Martínez <jeugenio(at)umcervantes(dot)cl>
To: "francisco (dot)" <francisco(dot)cpp(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: secuencias
Date: 2006-09-20 19:15:59
Message-ID: 4511936F.4040708@umcervantes.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

francisco . escribió:
> Hola, Tengo La Sgte. duda:
> Cree una relacion tabla_a con un atributo id como llave primaria que es
> de tipo bigserial por lo que me creo la secuencia usuario_id_seq

ya...

> la cual
> funcionaba muy bien hasta que hice una insercion asignandole yo el valor al
> atributo id

Entonces no se ejecuta el DEFAULT de la columna id...

> el ultimo valor ingresado en el atributo fue el 7 y el valor
> que ingrese yo fue el 8

y cual era la idea de hacer eso?

> al crear una nueva tupla me arrojo un error de
> llave duplicada,

Obvio...

> al hacer un select a la secuencia tenia como ultimo valor
> el 7

Obvio...

> o sea que no se actualizo a 8

por que tendria que actualizarse si no la ocupaste?

> tuve que hacer un alter sequence para
> actualizarla

Claro...

> ¿existe alguna forma de que la secuencia se actualize al
> ultimo valor si le asigno yo el valor a id?

Piensa que utilidad podria tener eso, ya que si un campo es de tipo
serial (que en realidad el tipo SERIAL no existe, sino que es una
extension de postgres) si no lo vas a ocupar como tal? Es como si creas
un campo de tipo date para guardar marcas de tiempo y horas derechamente ...

De todas formas se podria hacer mezclando trigger con un funcion que
genere un nextval sobre tu secuencia cuando la tabla X reciba un INSERT
con un ID=null...

Aun asi, no le veo mucho sentido...

--
Juan Martinez G.
Departamento de Informatica
Universidad Miguel de Cervantes

In response to

  • secuencias at 2006-09-20 19:00:49 from francisco .

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message deepthroat 2006-09-20 19:21:31 habilitar/deshabilitar triggers
Previous Message francisco . 2006-09-20 19:00:49 secuencias