Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

Como hacer que el campo serial vuevla a numerar a partir de un valor

Estas en el tema de Como hacer que el campo serial vuevla a numerar a partir de un valor en el foro de PostgreSQL en Foros del Web. Tengo la siguiente tabla: Table "public.sustancia" Column | Type | Modifiers --------------+-------------------+--------------------------------------------- --------------------- gidsustancia | integer | not null default nextval('sustancia_gidsusta ncia_seq'::regclass) abreviatura | character ...
  #1 (permalink)  
Antiguo 30/03/2009, 10:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 30
Antigüedad: 15 años, 7 meses
Puntos: 0
Como hacer que el campo serial vuevla a numerar a partir de un valor

Tengo la siguiente tabla:

Table "public.sustancia"
Column | Type | Modifiers

--------------+-------------------+---------------------------------------------
---------------------
gidsustancia | integer | not null default nextval('sustancia_gidsusta
ncia_seq'::regclass)
abreviatura | character varying |
nombres | character varying |
unidades | character varying |
gidtipos | integer |
Indexes:
"sustancia_pkey" PRIMARY KEY, btree (gidsustancia)

y al hacer :
# Insert into sustancia (abreviatura,nombres,unidades,gidtipos) values ('n','nueva1','n',7)

me da el error:duplicate key value violates unique constraint

de repente intentando probar ocn nextval (con cosas que lei por ahi)
hizo alguna cosa muy rara: me saco valores pasando del 100...

pero yo ahora quiero que si tengo sustancias hasta 50 pues que siga en el 51 puedo hacer eso?
es que ahora me inserto la 201 pero no deberia ser asi...

alguien me puede ayudar
muchas gracias
  #2 (permalink)  
Antiguo 30/03/2009, 13:00
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Como hacer que el campo serial vuevla a numerar a partir de un valor

Hola marvi.

No se si te entiendí pero parece que quieres resetear la secuencia a un valor 51, ya que se encuentra en un valor mayor a 100?

si entendí bien, puedes hacerlo asi:

Código sql:
Ver original
  1. ALTER SEQUENCE sustancia_gidsustancia_seq restart WITH 51;

Espero te sirva.

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 14:27.