MySQL несколько внешних ключей в таблице с тем же первичным ключом
У меня есть столuser
с участиемuserID
в качестве первичного ключа. У меня есть еще одна таблицаFriends
, вFriends
таблица, у меня есть два пользователя как друзья, представленные столбцамиUserID
а такжеFrndID
где обаUserID
а такжеFrndID
должен бытьuserID
в таблицеuser
.
Я хочу обеспечить целостность данных. Могу ли я использовать что-то вроде этого?
ADD CONSTRAINT `ufd_users_fk` FOREIGN KEY (`userId`, `friendId`)
REFERENCES `users` (`userId`, `userId`) ON DELETE CASCADE ON UPDATE CASCADE;
Я хочу знать, этоREFERENCES
пользователи(
Логин пользователя,
Логин пользователя)
правильно ли ссылаться на столбец несколько раз? Причина, по которой я не создаю 2 отдельных ограничения, заключается в том, что оба пользователя должны существовать в таблице.user
.