mysql error 1025 (HY000): Error on rename of './foo' (errorno: 150)
A veces cuando tratamos de eliminar registros o tablas en mysql nos encontramos con este error, mysql no puede continuar, por que quedaría alguna clave foranea rota. No se muy bien por que a veces no te deja eliminar la clave foranea, pero veamos a continuación una forma sencilla de resolver el problema.
primero ejecutamos:
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';
Despues continuamos ejecuntando las sentencias necesarias, y finalmente dejamos la cosa como estaba
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
Publicado el
Actualizado por última vez el