Ver Mensaje Individual
  #5 (permalink)  
Antiguo 12/12/2009, 12:20
Avatar de mariogl84
mariogl84
 
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona
Mensajes: 433
Antigüedad: 21 años, 5 meses
Puntos: 20
Respuesta: Mover registros

Lo primero sería "desplazar" los registros, para que queden las primeras mil ids libres. Ejecutas esta query:

UPDATE tu_tabla SET id = id + 1000

Luego, haces el bucle que te ha dicho jackson666, pero antes del while declara una variable $nueva_id = 1, y en cada vuelta del bucle incrementas su valor con $nueva_id++ , y utilizas esa variable para asignar las nuevas id en cada vuelta.

Ten en cuenta que, al haber desplazado todos los registros, los que te interesan ya no están entre 20001 y 21000, sino entre 21001 y 22000.

Al final tendrás que volver a desplazar hacia abajo:
UPDATE tu_tabla SET id = id - 1000 WHERE id > 21000

Ésta es la teoría sin pulir mucho. Seguro que hay alguna manera de hacerlo en menos pasos, pero esto te funcionará. Suerte.