PostgreSQL - secuencia o no ?

 
Vista:

secuencia o no ?

Publicado por Joan (3 intervenciones) el 15/08/2005 19:25:22
Hola,

necesito crear un campo autoincremental en PostgreSQL que es clave primaria de una tabla. Esto lo he hecho con una secuencia ciclica en la clave primaria, pero el problema sucede cuando llego al final de la sequencia. Al existir el valor mínimo de la secuencia en ese campo de la tabla no me deja insertar más valores.

Me explico mejor que quizas no se entiende. Tengo la siguiente tabla:

campo1 campo2
---------- ------------
1 2
3 23
4 45
5 21
... ...
32 456
33 32

y quiero que al dar la vuelta a la secuencia que he puesto en el valor máximo 33 y que como valor mínimo tiene 1, al hacer el NEXTVAL e intentar insertar un '1' en el campo1 no me deja como es normal puesto que se trata de una clave primaria y no permite valorres duplicados.

Como puedo hacer el nuevo registro se inserte directamente en el registro libre (2) ?

Tengo mejor que dejar de usar las secuencias y hacer algun programilla que por ejemplo vaya sumando 1 al último valor del campo1 hasta que encuentre un número disponible. El hecho de que haya huecos se debe a que se pueden eliminar registros de la tabla.

Gracias a todos/as.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder