Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/02/2008, 08:55
Avatar de Gabo77
Gabo77
 
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años, 2 meses
Puntos: 6
Re: Problema tonto con Tabla

Nop, ese no es el comportamiento habitual de auto_increment, verás, para no recorrer siempre la tabla en busca del valor mas alto del campo auto_increment, simplemente se marca el valor actual cuando insertas, es decir algo como que cada que vas insertando se le va sumando 1 a esa marca, pero cada que borras no se le resta 1, simplemente por que puedes borrar el último insertado ó el primero... o el de enmedio... añadir una lógica de rellena huecos sin recorrer la tabla sería pesado para las inserciones, es por esto que solo se agenda el contador de la ultima marca insertada, y aunque borres y tu tabla este vacía, el proximo valor a insertar será el ultimo que habías insertado más 1....

para reinicializar la tabla con el valor auto_increment puedes probar con un Drop Table y volver a crear la estructura, o simplemente usar (en SQLServer) el CheckIdentity con la siguiente sintaxis:

Código:
DBCC CHECKIDENT 
    ( 'table_name' 
        [ , { NORESEED 
                | { RESEED [ , new_reseed_value ] } 
            } 
        ] 
    )

saludos!
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....