Foros del Web » Programando para Internet » PHP »

MySQL: ¿Que pasa al borrar un indice con un campo AutoIncrementado?

Estas en el tema de MySQL: ¿Que pasa al borrar un indice con un campo AutoIncrementado? en el foro de PHP en Foros del Web. Hola nuevamente! Por fin consegui emepzar a armar mi base despues de tanto leer... ahora estoy con una pequeña duda. Cree una pagian desde donde ...
  #1 (permalink)  
Antiguo 08/08/2005, 17:33
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 13 años
Puntos: 2
MySQL: ¿Que pasa al borrar un indice con un campo AutoIncrementado?

Hola nuevamente!

Por fin consegui emepzar a armar mi base despues de tanto leer... ahora estoy con una pequeña duda.

Cree una pagian desde donde puedo ver todo el contenido de mi base (usuarios), y me permite a su vez agregar nuevos usuarios y borrar los existentes.

Cada usuario tiene como clave un campo "ID_Usuario" que se autoincrementa...
lo que noto es que al borrar todos los usuarios de la base y crear uno nuevo este campo "ID_Usuario" no habia vuelto a CERO, sino que sigue como un contador que jamas se reinicio.

¿Esto es normal? ¿me serviria de algo hacer una funcion que chequee si el usuario a borrar es el ultimo y de ser asi poner su ID_Usuario en 0 antes de eliminarlo? No creo que me sirva de algo tener todos mis usuarios ordenados de 1 en adelante sin saltear numeros... quiza para saber el "Numero de Socio" o la cantidad de socios de una forma muy simple ?

Un saludo y de ante mano muchas gracias!
  #2 (permalink)  
Antiguo 08/08/2005, 17:46
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 14 años, 1 mes
Puntos: 11
El comportamiento de tu campo autonumeric es normal.
No te serviría de nada saber que un usuario es el ultimo, por que no puedes asignarle cero al indice, te daria error mysql. Lo que si puedes hacer en ese caso es volver a crear la tabla, lo cual restablece los indices. Para ello puedes guardar en una variable el sql para construirla y luego ejecutar ese sql para volver a crearla, asi:

show create table nombre_tabla; (haces esta consulta y guardas el resultado en una variable como $cadena_create_guardada)

luego ejecutas: drop table nombre_tabla;

y por ultimo ejecutas: mysql_query($cadena_create_guardada,$link);

Si esto ultimo produce errores se debe a que hay que limpiar un poco el sql.
  #3 (permalink)  
Antiguo 08/08/2005, 21:40
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 13 años
Puntos: 2
Gracias por tu comentario, me aclaro la duda.

Un saludo!
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 18:11.