mysql Mehrere Fremdschlüssel in einer Tabelle zum selben Primärschlüssel

Ich habe einen tischuser mituserID als Primärschlüssel. Ich habe einen anderen Tisch angerufenFriends. In demFriends In der Tabelle habe ich zwei Benutzer als Freunde, die durch die Spalten dargestellt werdenUserID undFrndID wo beidesUserID undFrndID sollte ein seinuserID in der Tabelleuser.

Ich möchte die Datenintegrität durchsetzen. Könnte ich so etwas benutzen?

ADD CONSTRAINT `ufd_users_fk` FOREIGN KEY (`userId`, `friendId`)
REFERENCES `users` (`userId`, `userId`) ON DELETE CASCADE ON UPDATE CASCADE;

Ich möchte wissen, istREFERENCESBenutzer(Benutzeridentifikation,Benutzeridentifikation) Eine Spalte mehrmals korrekt referenzieren? Der Grund, warum ich nicht zwei separate Einschränkungen erstelle, ist, dass beide Benutzer in der Tabelle vorhanden sein müssenuser.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage