Ho una tabella la cui chiave primaria è utilizzata in molte altre tabelle e ha diverse chiavi esterne ad altre tabelle.MySQL Rimozione di alcune chiavi esterne
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;
Il problema è che quando sto cercando di eliminare una delle colonne chiave esterna (cioè locationIDX) mi dà un errore.
"ERRORE 1025 (HY000): Errore su Rinomina"
Come posso eliminare la colonna nella tabella di assegnazione sopra senza ottenere questo errore?
Questo era il mio problema. Mi sento un po 'stupido ora. Se qualcun altro ha questo problema, è possibile trovare i nomi dei vincoli di chiave esterna utilizzando la funzione SHOW CREATE TABLE. – Drew
ha funzionato per mee – bynu022
Suggerimento: usa 'SHOW CREATE TABLE footable;' per vedere qual è il nome del vincolo. Non è il nome della colonna per se. Grazie per la risposta! –