Как вы запускаете отношения один ко многим между (многими ко многим) таблицей и обычной таблицей? - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь установить связь «один ко многим» между таблицей контактов и таблицей DepartmentTitle.

Я думал о введении суррогатного ключа в таблицу DepartmentTitle, чтобы я мог ссылаться на эту таблицу DepartmentTitle to Contacts, чтобы инициировать связь один ко многим между этими двумя таблицами. Но я не хочу регистрировать ту же комбинацию составных ключей в DepartmentTitle, и это помешало мне ввести суррогатный ключ в таблицу. Я хочу, чтобы комбинация составных ключей в таблице DepartmentTitle была уникальной.

Чтобы исправить ситуацию, я подумал о реализации ниже диаграммы ER, где DepartmentTitleID будет уникальным и используется в качестве идентификатора ссылки на таблицу (но не первичный ключ). Будет ли это работать? Если нет, каково было бы решение? enter image description here

1 Ответ

0 голосов
/ 01 мая 2019

Если вы собираетесь ввести суррогатный ключ, используйте его в качестве основного ключа. Однако я бы предпочел использовать Department_ID и Title_ID в качестве отдельных столбцов в Контактах, поскольку это позволяет при необходимости связывать Контакты с Отделом и / или Заголовком без необходимости присоединения к DepartmentTitle. Вы по-прежнему можете иметь составное ограничение внешнего ключа из двух столбцов в Контактах к одному и тому же в DepartmentTitle.

...