2010-09-07 3 views
0

J'essaie de changer le type dans deux tables d'un innoDB. Le problème est que les valeurs sont une clé et une clé étrangère. Lorsque je tente de faire le changement que je reçois l'erreur suivanteContraintes de clé étrangère Innodb

#1025 error on rename 

Ai-je besoin de laisser tomber les clés étrangères puis effectuez les modifications, puis appliquer de nouveau la clé étrangère?

Répondre

0

Oui, vous devez supprimer la clé étrangère. Essayez SHOW INNODB STATUS pour voir s'il y a une explication plus élaborée de ce qui se passe.

1

Comme u peut utiliser le nom de laisser tomber la première clé et la colonne étrangère alors:

ALTER TABLE categories DROP FOREIGN KEY categories_ibfk_1; 
ALTER TABLE categories DROP COLUMN assets_id; 

Pour en savoir quelle table a causé l'erreur, vous pouvez exécuter

SHOW ENGINE INNODB STATUS\G 

puis consultez la section "ERREUR DE TOUCHE FORT DERNIERE".

Questions connexes