Проблема проектирования базы данных - несколько ссылок "ИЛИ" - PullRequest
0 голосов
/ 28 июня 2011

Я сейчас пытаюсь установить связь со следующим. Например, у меня в настоящее время есть эти три таблицы:

  • Пользователь
    • UserId
  • Компания
    • CompanyID
  • Счет
    • AccountId

Я хочу, чтобы «AccountId» ссылался на «UserId» ИЛИ «CompanyId».

Я пытался:

FOREIGN KEY (AccountId) REFERENCES User (UserId),
FOREIGN KEY (AccountId) REFERENCES Company (CompanyId)

но при этом для параметра "AccountId" указывается ссылка на "UserId" И "CompanyId".

Мне было интересно, есть ли у кого-нибудь какие-нибудь рекомендации?

1 Ответ

1 голос
/ 28 июня 2011

Почему бы вам не установить UserId или CompanyId в соответствии с AccountID.Я имею в виду обратный порядок ссылок.Поскольку у каждого пользователя или компании будет учетная запись, сначала создайте учетную запись, а затем просто свяжите ее с соответствующей записью пользователя или компании.

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