Ich habe eine Datenbank, die ich vor einiger Zeit aufgebaut habe. Jede Tabelle in der Datenbank ist InnoDb. Mehrere Tabellen hatten Fremdschlüsseleinschränkungen, und ich habe sie für On Delete = Cascade
eingerichtet. Als ich eine frühere Version von phpmyadmin verwendet habe, war die Arbeit mit diesen einfach: Ich gehe einfach auf die Registerkarte Struktur einer Tabelle, klicke auf den Link Beziehungsansicht und so lange ich die richtigen Indizes für die richtigen Spalten eingerichtet hatte Ich könnte die Fremdschlüssel so einstellen, wie ich es für richtig halte.
Seit dem Upgrade auf Version 4 ist es ein Albtraum geworden. Bei einigen Tabellen gehe ich in die Beziehungsansicht und alles ist in Ordnung. Aber für andere - selbst wenn sie bereits Fremdschlüsselvorgaben haben - kann ich keine Optionen sehen, mit ihnen zu arbeiten.
Um die Sache noch schlimmer zu machen, habe ich sogar versucht, die Indizes zu löschen und sie wieder hinzuzufügen, nur um den folgenden Fehler zu erhalten: Cannot drop index [index_name]: needed in a foreign key constraint.
Also wenn ich mich nicht irre, ist die Einschränkung da, aber phpmyadmin weigert sich zeig es mir.
Gibt es etwas, was ich tun muss, damit sie wieder auftauchen? Dies ist extrem frustrierend, um es gelinde auszudrücken: etwas, das früher gut funktionierte, ist dank eines Upgrades nicht möglich.
OK, nachdem ich ein bisschen mit den Tischen herumgespielt habe, habe ich herausgefunden, was vor sich geht. Die Fremdschlüssel-Einschränkungsoptionen werden nur angezeigt, wenn die Tabellennamen Großbuchstaben enthalten. Sehr frustrierend, um es gelinde auszudrücken.
Tags und Links mysql database foreign-keys phpmyadmin