Я пытаюсь смоделировать базу данных Olympi c Games, в которой у меня есть полная непересекающаяся специализация Event. Событие может быть командным или индивидуальным (например, мужчина-ретранслятор 4x100 м и мужчина-100 м соответственно).
Я знаю, что могу сопоставить эти две суб-сущности с их собственной таблицей, содержащей атрибуты верхний, но моя проблема в том, что эти дочерние объекты имеют одинаковые атрибуты, единственное, что изменяется, это отношения NN, которые они имеют с различными объектами (Team и Athelete соответственно). Поэтому я не могу сопоставить какой-либо внешний ключ, чтобы помочь идентифицировать их
представление ER
Что мне делать в этой ситуации? Должен ли я просто стереть подтипы и использовать верхний, используя эксклюзивность в отношениях или я могу как-то поддерживать эту модель?
Любая помощь приветствуется, любые вопросы, на которые я с удовольствием отвечу.