2014-09-02 16 views
5

Ho cercato di trovare un modo per eliminare alcune chiavi esterne generate per errore, ma ogni volta che cancello la tabella associata alla chiave esterna per provare a cancellarla, dice " impossibile eliminare l'indice: necessario nel vincolo di chiave esterna ".Eliminazione di tabelle chiave esterne su phpmyadmin? impossibile eliminare l'indice: necessario nel vincolo di chiave esterna

+0

Non è necessario rilasciare una tabella per eliminare gli indici. È possibile eliminare un indice da solo. E FYI, "phpmyadmin" non è un database. È un'interfaccia di gestione per mysql. –

+0

grazie, ho trovato gli indici e sono riuscito a eliminare quelli di cui non avevo bisogno. Non era un diretto, ma ho visto la luce. Grazie Marc. – PiboRock

risposta

5

è necessario eliminare la chiave esterna con un'istruzione ALTER:

ALTER TABLE yourtable DROP CONSTRAINT yourforeignkeyname 

si potrebbe essere in grado di forzare cadere così (opere nella console di MySQL, ma possono non operare in phpMyAdmin come io non sono sicuro di come le sessioni sono gestite)

SET FOREIGN_KEY_CHECKS=0; DROP TABLE yourtable; 

Nota: questo è molto pericoloso e non consigliato se si sta seriamente utilizzando chiavi esterne.

+0

buono a sapersi grazie !! – PiboRock

+1

Grazie! +1, non dimenticare di reimpostare SET FOREIGN_KEY_CHECKS = 1; –

22

Nella scheda "Struttura", fare clic su "vedi vista relazionale" sotto i campi. Qui è possibile rimuovere le chiavi esterne selezionando un valore vuoto nel menu a discesa.

Problemi correlati