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

"reiniciar" campo auto_increment(usar valores que ya no existen)

Estas en el tema de "reiniciar" campo auto_increment(usar valores que ya no existen) en el foro de Bases de Datos General en Foros del Web. Hola, tengo una duda y no se si sera posible. He buscado informacion sobre como resetear un campo en mi tabla en mysql que es ...
  #1 (permalink)  
Antiguo 16/11/2010, 03:16
 
Fecha de Ingreso: junio-2010
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
"reiniciar" campo auto_increment(usar valores que ya no existen)

Hola, tengo una duda y no se si sera posible.

He buscado informacion sobre como resetear un campo en mi tabla en mysql que es auto_incremente.

Y serviria hacer algo asi:

ALTER TABLE nombre_tabla AUTO_INCREMENT=1

Pero esto sirve cuando ya no quedan elementos en mi tabla.

Si aun tengo estos elementos:

id nombre apellido
3 carlos garrido
4 luis perez

Esa sentencia me sirve si pongo el autoincrement a 5, si es que he borrado algun valor que habia antes, pero lo que yo quiero es, que en este caso, si inserto uno nuevo, que me lo coloco en el 1 que ya no existe. Y el siguiente en el 2, y el siguiente en el 5. Y si vuelvo a borrar el elemento con id=2, y hago una insercion, que me lo haga en el 2 que esta "libre".

Es eso posible?

Y que limite tiene un auto_increment?

gracias
  #2 (permalink)  
Antiguo 16/11/2010, 03:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: "reiniciar" campo auto_increment(usar valores que ya no existen)

Este es un tema recurrente, muchos de los que se inician en el tema de BBDD lo preguntan alguna vez, y por eso he puesto este post en las FAQs: Renumerar un campo auto_increment

Como tip adicional, te sugeriría que si la tabla en cuestión tiene muchos borrados, lo mejor es plantease una PK que no sea un ID autonumérico, sino siguiendo las pautas del buen diseño de tablas: Busca la clave candidata entre los mismos datos de la tabla.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 16/11/2010, 04:02
 
Fecha de Ingreso: junio-2010
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: "reiniciar" campo auto_increment(usar valores que ya no existen)

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Este es un tema recurrente, muchos de los que se inician en el tema de BBDD lo preguntan alguna vez, y por eso he puesto este post en las FAQs: [URL="http://www.forosdelweb.com/f86/faqs-mysql-489891/#post3364616"]Renumerar un campo auto_increment[/URL]

Como tip adicional, te sugeriría que si la tabla en cuestión tiene muchos borrados, lo mejor es plantease una PK que no sea un ID autonumérico, sino siguiendo las pautas del buen diseño de tablas: Busca la clave candidata entre los mismos datos de la tabla.
Muchas gracias por la información. realmente no se hacen muchos borrados. Ni siquiera insercciones.

Y teniendo en cuenta:

Cita:
En este contexto, si se insertasen 1.000.000 de registros por segundo, se requerirían más de 584.554 años para agotar la numeración de un BIGINT.
mi campo es mediumInt pero jamas habra 1.000.000 registros por segundo. Mas o menos hablo de 5.000 registros al año asique imaginate el margen que tengo! xD

Asi que lo voy a dejas asi. Gracias y perdon por no leerme el FAQ.

un saludo
  #4 (permalink)  
Antiguo 16/11/2010, 04:24
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: "reiniciar" campo auto_increment(usar valores que ya no existen)

Me alegra que te fuera útil.

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campos
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.
Respuesta




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