ALTER TABLE table2
ADD FOREIGN KEY FK_IMAGE (id_image)
REFERENCES table1 (id_image)
ON DELETE CASCADE
ON UPDATE CASCADE;
SET @currentRow = 0;
UPDATE table1 INNER JOIN (
SELECT @currentRow := @currentRow + 1 AS id_image_new, id_image AS id_image_old
FROM table1
ORDER BY id_image ASC) t on t.id_image_old = table1.id_image
SET table1.id_image = t.id_image_new;
ALTER TABLE table1 AUTO_INCREMENT = 1;
Der FK aktualisiert automatisch die IDs Ihres 2. Tisches entsprechend.
Ich bin mir überhaupt nicht sicher, aber in einigen älteren Versionen von MySQL kann das Aktualisieren einer Tabelle, auf die Sie in einer Unterabfrage des Updates verweisen, abstürzen. Wenn ja, einfach eine 2. Tabelle erstellen und füllen (inserts), dann die alte löschen und die neue umbenennen.