MySQL Forums
Forum List  »  Spanish

Re: ERROR 1005 (HY000): No puedo crear tabla ... (Error: 150)
Posted by: Jesus Uzcanga
Date: December 19, 2012 10:43AM

Hola Adán

Es un claro ejemplo de problemas con claves foraneas.

Algo que te pudo haber ayudando desde un principio es lo siguiente:

Muchas veces Mysql arroja un código de error y no sabemos exactamente que significa. Pues al instalar Mysql-server en un sistema operativo, el mismo, habilita una aplicación que permite conocer estos códigos... Para ejecutarla solo debes abrir una cónsola y usar el comando "perror" sin comillas, seguido del código del error.

En este caso sería

perror 150

Y el sistema operativo respondería:

MySQL error code 150: Foreign key constraint is incorrectly formed

Y con esto ya tienes al menos una guía de por donde esta el problema.

___________________________________________________________________________

Adicionalmente existe una forma de poder insertar/eliminar/modificar datos de una tabla sin importar las claves foraneas que posea. Esto obviamente es muy delicado por lo que debes hacer respaldos previamente y trabajar con cuidado.

Simplemente debes agregar la cláusula "SET FOREIGN_KEY_CHECKS=0;" sin comillas al principio del el script y listo!!!

Esto apaga la integridad referencial (relaciones de claves foraneas) momentaneamente (durante la ejecución del script) y te permite mover la data a tu gusto.

Espero que te sirva

___________________________
Ing. Jesús Alfredo Uzcanga
Twitter: @JesusUzcanga

We learn the 20% of what we HEAR,
the 50% of what we SEE,
the 80% of what we DO and
the 95% of what we TEACH.

____________________________________________________________
https://www.linkedin.com/in/jauzcanga/

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: ERROR 1005 (HY000): No puedo crear tabla ... (Error: 150)
31671
December 19, 2012 10:43AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.