J'ai une table dont la clé primaire est utilisée dans plusieurs autres tables et a plusieurs clés étrangères à d'autres tables.MySQL Retrait de certaines clés étrangères
CREATE TABLE location (
locationID INT NOT NULL AUTO_INCREMENT PRIMARY KEY
...
) ENGINE = InnoDB;
CREATE TABLE assignment (
assignmentID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
locationID INT NOT NULL,
FOREIGN KEY locationIDX (locationID) REFERENCES location (locationID)
...
) ENGINE = InnoDB;
CREATE TABLE assignmentStuff (
...
assignmentID INT NOT NULL,
FOREIGN KEY assignmentIDX (assignmentID) REFERENCES assignment (assignmentID)
) ENGINE = InnoDB;
Le problème est que quand je suis en train d'abandonner l'une des colonnes de clé étrangère (c.-à-locationIDX), il me donne une erreur.
"ERREUR 1025 (HY000): Erreur sur renommage"
Comment puis-je laisser tomber la colonne dans la table d'affectation ci-dessus sans obtenir cette erreur?
C'était mon problème. Je me sens un peu bête maintenant. Si quelqu'un d'autre a ce problème, vous pouvez trouver les noms de contrainte de clé étrangère en utilisant la fonction SHOW CREATE TABLE. – Drew
cela a fonctionné pour moi – bynu022
Astuce: utilisez 'SHOW CREATE TABLE footable;' pour voir le nom de la contrainte. Ce n'est pas le nom de la colonne en soi. Merci d'avoir répondu! –