В конкретном случае имею 5 видов превью для записи в блоге: Аудиозапись, видеозапись, изображение, слайдер и без превью. Аудио и видео записи могут проигрываться как со встроенного плеера так и встраиваться с других ресурсов, допустим с youtube. Какие таблицы в базе мне для этого использовать, и как их организовать так что бы по мимо прочего была возможность навешивать FK на типы превью?
2 варианта вижу я:
1. Так как под каждый тип превью рационально использовать разные типы данных, то наверное 5 связанных таблиц. И связь не через FK а реализовать в php.
2. Талица blog c id и таблица blog_preview в которой blog_id, и тогда через FK
1 вариант мне более нравится, тем что это более гибкое решение. Потом не надо будет танцев с бубном, что бы добавить еще один тип превью + более рациональное использование памяти. Под разные превью можно использовать разную логику и кол-во полей в базе и т.д. Но любители MySql сейчас назовут меня еретиком и спалят своими комментами.
2 вариант наверное ближе к стандартам, но стандарты пишут и переписывают люди.