Professional Documents
Culture Documents
Este post es una traduccin al castellano y una ampliacin del post MySQLs ERROR
1025 explained.
En versiones de MySQL superiores o iguales a la 5.5.* el motor de InnoDB ha sido
cambiado totalmente y con ello la forma de tratar las claves externas, con ello aparecen
nuevos errores como el que vamos a tratar de solucionar hoy:
MySQL Error Number 1025
Error on rename of tabla temporal to tabla real (errno: 150)
Este error puede aparecer al intentar cambiar el nombre de la columna, o el tipo de datos
o su valor por defecto, en fin, cualquier modificacin que afecte a una columna de la
tabla que sea una foreign key (clave extranjera). O sea MySQL emite un mensaje de
error crtico, error on rename (error en cambiar el nombre), cuando se intenta
modificar una tabla de tal manera que se tenga que romper una restriccin de clave
externa.
Y luego el ndice:
Os funciona?
Quizs tambin le interese:
MySQL 5.6.11 error 1146
Fechas, valor por defecto en MySQL
Claves nicas para valores nulos en MySQL
Campos con valor nico en SQL Server
Linkwithin
funciono a la perfeccin.
Gracias!
10 de marzo de 2011, 19:51
Annimo dijo...
ES posible que haya que realizar algn paso adicional, dependiendo del cambio
que se realice en la columna. Si no deja crear la constraint, aqu explican los
posibles motivos:
http://verysimple.com/2006/10/22/mysql-error-number-1005-cant-create-tablemydbsql-328_45frm-errno-150/
(Por ejemplo, yo cambi la collation de una columna y tuve que cambiar
tambin la de la clave fornea antes de crear la clave)