2016-03-31 9 views
-1

Ich bin wirklich verzweifelt. Ich musste meinen alten wamp-Server neu installieren und weiß nun nicht mehr, wie ich in phpmyadmin mit fremden Schlüsseln arbeiten soll. Jetzt habe ich Wamp 3.0.0 mit MySQL 5.7.9.Foregin Schlüssel in NEW phpmyadmin

Ich habe 2 Tabellen - Benutzer, Profile. In Profilen habe ich eine Spalte namens user_id, die auf die users-Tabelle verweisen muss. Wie kann ich das machen?

In altem phpmyadmin, klickte ich gerade auf relation view und dort sah ich alle Optionen für die Einstellung foreing Schlüssel. Aber in dieser neuen phpmyadmin Ich habe keine solche option.Now, sieht es wie folgt aus: new phpMyAdmin

Wenn ich auf „Relation Ansicht“ klicken, ich so etwas wie dieses: enter image description here

Aber Wo kann ich einfach Fremdschlüssel zur Benutzertabelle hinzufügen? Was ich machen muss? Natürlich habe ich InnoDB auf alle Tabellen, Primärschlüssel auf Profile (ID) und Benutzer (ID) festgelegt, Benutzer-ID in der Profiltabelle ist einzigartig.

Und meine zweite Frage ist - wo kann die Liste aller Fremdschlüssel in der Tabelle?

+0

In der Beziehungsansicht können Sie eine Einschränkung hinzufügen (Fremdschlüssel). Im zweiten Screenshot, den Sie gepostet haben, können Sie einen Constraint-Namen eingeben, Spalte, um die Constraint zu setzen und wählen Sie die Tabelle + Spalte, die Constraint verwenden sollte. – Arno

+0

Also sagen Sie mir, dass ich bereits einen foreing key für den Tabellenbenutzer erstellt habe? Es ist seltsam, weil es in meiner PHP-Anwendung nicht funktioniert. – mrow

+0

Sie verwenden die 'Fremdschlüsseleinschränkungen'. Es gibt einen Abschnitt "Interne Beziehungen" über dem Abschnitt "Foreign Key Constraints". Dort stellen Sie Ihren Fremdschlüssel visuell ein. – Edper

Antwort

0

Sie können es auch manuell statt visuell tun.

ALTER TABLE profiles ADD CONSTRAINT fk_users_id 
FOREIGN KEY (user_id) REFERENCES users(user_id) 
+0

Ich habe das auch versucht. Aber ich habe diesen Fehler: # 1215 - Kann keine Fremdschlüsseleinschränkung hinzufügen – mrow

+0

Stellen Sie sicher, dass Ihre 'user_id' in' users' Tabelle den gleichen Datentyp wie 'user_id' in' profiles' Tabelle hat. – Edper

+0

Mann, ich schätze wirklich Ihre Hilfe :) .. Wie auch immer, user_id in Profilen und ID in Benutzern sind vom gleichen Typ - int (11) .. Weiß noch nicht, wo es nicht funktioniert .. Vielleicht wird es helfen, aber ich habe keine internen RElations Teil in irgendeiner Tabelle – mrow