SQL - Reinicializar un Campo Autonumerico

 
Vista:

Reinicializar un Campo Autonumerico

Publicado por jvirgo (6 intervenciones) el 11/08/2006 22:27:57
Un Saludo a todos los miembros de este foro.
Tengo una tabla que tiene un campo AUTONUMERICO, en esta tabla permanentemente se adiciona y elimina registros.
El problema radica que cuando elimino registros el campo numérico guarda en la memoria el ultimo número generado y no el ultimo número de la tablaes decir

campo Autonum: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18

Elimino los últimos registros: 15,16,17,18

y cuando añado registros el autonumerico genera números desde el 19,20,21,..........
la tabla queda: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,19,20,21.......
Lo que necesito es que el autonumerico detecte el número máximo de la tabla
y se genere apartir de ese número.

Espero me puedan indicar como resolver mi problema.

Gracias
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

RE:Reinicializar un Campo Autonumerico

Publicado por Isaías (5072 intervenciones) el 11/08/2006 22:58:38
jvirgo

El problema con los campos tipo IDENTITY, es que no fueron creados para cuando hay un DELETE o bien, un INSERT no efectuado.

Para eso, debes cambiar de tipo de campo (int o bigint) y generar tu mismo tu numero consecutivo

DECLARE @MyNumeroSiguiente INT
SELECT @MyNumeroSiguiente = ISNULL(MAX(MyConsecutivo), 0)+1 FROM MyTabla

SELECT 'Mi siguiente numero es ', @MyNumeroSiguiente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Reinicializar un Campo Autonumerico

Publicado por Carlos A. (1 intervención) el 31/05/2007 07:55:54
hola, lo que tenes que hace es comparctar y reparar la base de datos y listo, tema resuelto

suerte!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar