В моделировании отношений объекта эта настройка моделируется как диск с высокой степенью вероятности и три объекта: MUSIC DISC, MOVIE DISC и GAME DISC. И реализуя эти сущности, у вас есть четыре классических варианта:
- Реализация супертипа
- Неявная реализация подтипа
- Явная реализация подтипа
- Реализация типа дуги
Вариант 1: одна таблица DISCS со столбцом Disc_Type с тремя допустимыми значениями «MUSIC», «MOVIE» и «GAME». И необязательные столбцы для всех атрибутов и отношений трех подразделений. И некоторые проверочные ограничения для этих столбцов, чтобы убедиться, что они имеют значение только тогда, когда это допускается в столбце Disc_Type.
Вариант 2: четыре таблицы, по одной для каждой сущности, допускающие диски неизвестного типа. Таблицы, представляющие субъекты, имеют внешний ключ к таблице DISCS.
Вариант 3: три таблицы: MUSIC_DISCS, MOVIE_DISCS и GAME_DISCS, где все атрибуты, принадлежащие суперсуществованию, копируются в три таблицы.
Вариант 4: четыре таблицы, где таблица DISCS содержит три необязательных столбца внешнего ключа для трех таблиц выдры. Точно один из этих трех столбцов внешнего ключа должен быть заполнен.
Не существует «правильного» пути. Вам просто нужно выбрать тот, который лучше всего соответствует вашим потребностям.
С уважением,
Роб.