Возможно, об этом уже спрашивали, но я не смог найти хороший ответ: у меня есть главная таблица, которая может быть в отношениях 1-ко-многим с разнородными объектами.Лучше всего описать это на примере:
У меня есть основная таблица аудио плейлиста (tb_playlist).Список воспроизведения может содержать программные эпизоды (tb_episode), песни (tb_songs) или аудиозапись (tb_reportae).Простой дизайн, который, как я знаю, не самый лучший для обеспечения целостности данных, будет выглядеть следующим образом:
**tb_playlist**
(
playlist_id,
audioitem_id [can be episode_id, song_id, reportage_id],
audioitem_type [can be: episode, song, or reportage]
)
Приведенное выше решение явно не обеспечивает целостность данных, альтернативные столбцы могут быть следующими:1007 *
, но последнее плохо подходит для расширения типов аудио элементов.
Вопрос в том, как лучше всего решить эту проблему?
Большое спасибо!