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;
Le FK mettra automatiquement à jour les identifiants de votre 2ème table en conséquence.
Je ne suis pas sûr du tout, mais dans certaines anciennes versions de mysql, mettre à jour une table à laquelle vous faites référence dans une sous-requête de la mise à jour pourrait planter. Si c'est le cas, créez simplement un 2e tableau et remplissez-le (encarts), puis supprimez l'ancien et renommez le nouveau.