Проверка моделирования данных - PullRequest
1 голос
/ 05 апреля 2011

Нужен совет по наилучшему способу моделирования следующих общих требований. Поскольку это просто общие, в модель включены только базовые объекты / атрибуты.

Цель состоит в том, чтобы собирать и перечислять веб-сайты для компаний, которые могут иметь или не иметь франшизы.

  1. Бизнес может иметь ноль, один или несколько веб-сайтов
  2. Франшизы (причина включения ExternalBusinessId) компании могут иметь или не иметь те же веб-сайты, что и сам Бизнес или другие франшизы

В попытке выполнить эти требования я удалил ExternalBusinessId с ПК Веб-сайта. Не уверен, что это так просто, чтобы удовлетворить эти требования, но, похоже, это все равно оставит много недугов.

Другой подход, который мне может понадобиться, - это перенести франшизы на их собственный стол, что может облегчить решение этой проблемы, но усложнит остальную часть моей модели (здесь не показано). Если наличие франшиз в их собственной таблице является правильным подходом, я бы предпочел пойти по этому пути и пройти оставшуюся часть упражнения, чтобы это вписалось в мою полную модель. В моей нынешней модели для управления бизнесом без франшиз по умолчанию установлен ExternalBusinessId, равный 001.

Есть мысли?

Спасибо

enter image description here

1 Ответ

1 голос
/ 05 апреля 2011
  • Франшиза - это бизнес.
  • Слово франшиза описывает отношения между двумя предприятиями.
  • У каждого бизнеса есть ноль, один или несколько веб-сайтов.

Если я вас правильно понимаю, вы, кажется, думаете что-то вроде этого.Франшизы в отдельной таблице подразумевают исключение их из таблицы «бизнес».

Франшизы - это предприятия.Храните их в таблице «бизнес», как и любой другой бизнес.Сохраните отношения между франшизой и ее франчайзером в другой таблице.

Информация, касающаяся франшизы как бизнеса, должна ссылаться на ключ в таблице «бизнес».Такая информация может включать его почтовый адрес и номера телефонов.

Информация, относящаяся только к франшизе как франшизе, должна ссылаться на ключ в таблице франшиз.Такая информация может включать номер лицензии франшизы и дату прекращения франшизы.

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