Несколько внешних ключей в одной таблице к другой таблице в MySQL - PullRequest
2 голосов
/ 16 марта 2010

В моей базе данных есть две таблицы: user и call. Пользователь существует из 3 полей: идентификатор, имя, номер и вызов: идентификатор, «источник», «пункт назначения», «указанный», дата.

Мне нужно отслеживать звонки в моем приложении. Поля 3 '' на самом деле являются числами идентификаторов пользователей.

Теперь мне интересно, можно ли сделать эти три элемента внешнего ключа поля id-поля в таблице user?

Ответы [ 3 ]

3 голосов
/ 16 марта 2010

Что-то похожее должно делать работу:

ALTER TABLE call 
ADD CONSTRAINT fk_call_source_user FOREIGN KEY (source) 
REFERENCES user (id)

ALTER TABLE call 
ADD CONSTRAINT fk_call_destination_user FOREIGN KEY (destination) 
REFERENCES user (id) 

ALTER TABLE call 
ADD CONSTRAINT fk_call_referred_user FOREIGN KEY (referred) 
REFERENCES user (id)
3 голосов
/ 16 марта 2010

Да - можно; -)

Просто определите все три внешних ключа для ссылки на столбец id в User.

0 голосов
/ 29 августа 2014

Изменение таблицы звонков

ДОБАВИТЬ ИНОСТРАННЫЙ КЛЮЧ (Sourceid) ссылки Источник (Id),

FOREIGN KEY (DesId) ссылки Назначение (Id)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...