Mysql
 sql >> Database >  >> RDS >> Mysql

Impossibile eliminare la tabella:un vincolo di chiave esterna non riesce

Questo dovrebbe fare il trucco:

SET FOREIGN_KEY_CHECKS=0; DROP TABLE bericht; SET FOREIGN_KEY_CHECKS=1;

Come altri sottolineano, questo non è quasi mai quello che vuoi, anche se è quello che viene chiesto nella domanda. Una soluzione più sicura è eliminare le tabelle in base a bericht prima di eliminare bericht . Vedi la risposta di CloudyMarble su come farlo. Uso bash e il metodo nel mio post per eliminare tutte le tabelle in un database quando non voglio o non posso eliminare e ricreare il database stesso.

Il #1217 l'errore si verifica quando altre tabelle hanno vincoli di chiave esterna per la tabella che stai tentando di eliminare e stai utilizzando il motore di database InnoDB. Questa soluzione disabilita temporaneamente il controllo dei vincoli e quindi li riattiva. Leggi la documentazione per più. Assicurati di eliminare i vincoli di chiave esterna e i campi nelle tabelle a seconda di bericht , altrimenti potresti lasciare il database in uno stato non funzionante.