Dies sollte der Trick:
SET FOREIGN_KEY_CHECKS=0; DROP TABLE bericht; SET FOREIGN_KEY_CHECKS=1;
Wie andere weisen darauf hin, das ist so gut wie nie, was Sie wollen, auch wenn es ist, was in der Frage gestellt. Eine sicherere Lösung ist das Löschen der Tabellen in Abhängigkeit von bericht
vor dem Löschen bericht
. Siehe CloudyMarble Antwort, wie man das macht. Ich verwende bash und die Methode in meinem Beitrag, um alle Tabellen in einer Datenbank zu löschen, wenn ich die Datenbank selbst nicht löschen will oder kann.
Der Fehler #1217
tritt auf, wenn andere Tabellen Fremdschlüsseleinschränkungen für die zu löschende Tabelle haben und Sie das InnoDB-Datenbankmodul verwenden. Diese Lösung deaktiviert vorübergehend das Überprüfen der Beschränkungen und aktiviert sie dann erneut. Lesen Sie die documentation für mehr. Stellen Sie sicher, dass Sie die Einschränkungen für Fremdschlüssel und Felder in Tabellen je nach bericht
löschen. Andernfalls könnten Sie Ihre Datenbank in einem fehlerhaften Zustand belassen.
Finden Sie heraus, welche andere Tabelle es über Fremdschlüssel referenziert, und löschen Sie zunächst die FK-Einschränkung für diese Tabelle, und löschen Sie diese Tabelle. –
Sie müssen die Anforderung von anderen Tabellen auf die, die Sie nicht mehr wünschen, entfernen – BugFinder
Kann Ihnen eine dieser Antworten helfen? http://stackoverflow.com/questions/1905470/cannot-delete-or-update-a-parent-row-a-foreign-key-constraint-fails http://stackoverflow.com/questions/3334619/can not-delete-or-update-a-parent-row-a-foreign-key-constraint-failed –