Oude vragen, maar het volgende is een mogelijke omweg. Verplaats de gegevens in plaats van de tabellen te hernoemen. U moet er natuurlijk voor zorgen dat de nieuwe gegevens voldoen aan de regels voor buitenlandse sleutels.
SET foreign_key_checks = 0;
CREATE TABLE IF NOT EXISTS foo_old LIKE foo;
INSERT INTO foo_old SELECT * FROM foo;
TRUNCATE foo;
INSERT INTO foo SELECT * FROM foo_new;
Zorg ervoor dat u het als één query uitvoert, zodat de Foreign_key_checks op het hele ding van toepassing zijn. Ik hoop dat dit helpt.