Дилемма диагностики отношений между сущностями

В рамках оценки я пытаюсь построить ER-диаграмму для сайта электронной коммерции. В качестве игроков на сайте электронной коммерции есть Заказчик и Производитель. Итак, я подумал о создании таблицы - Legal Entity с LegalEntityID в качестве первичного ключа и customerUserID, ManufacturerID в качестве внешних ключей. Другими атрибутами будут EntityType (индивидуальный или корпоративный), Role (Customer, Producer), Name, Address, Phone number. Как вы думаете, в чем заключаются преимущества и недостатки этой установки? Я могу думать о частных лицах против корпорации, а затем для поддержания CustomeruserID и PRoducerID создать другую таблицу как Customer / Producer и использовать первичный ключ как CustomerUserID и ProducerID? Это усложнит? или создать таблицу ролей с идентификатором роли в качестве первичного ключа, а затем другую таблицу - LegalEntityrole с идентификатором LegalentityRole в качестве первичного ключа с идентификатором роли, LegalEntityID в качестве внешних ключей. Что вы думаете, ребята?

1 ответ

Похоже на сценарий, в котором хорошо бы использовалась структура наследования.

Я бы посоветовал вам иметь таблицу Legal Entity с обязательными полями, а затем ваши таблицы Customer и Producer, каждая из которых наследуется от таблицы Legal Entity, включая LegalEntityId в качестве внешнего ключа. При этом вам не нужна таблица ролей.

Другие вопросы по тегам