Всем привет! Всегда мучал такой вопрос как хранить информацию о документах. У меня есть мероприятие, у которого есть различные документы. Чаще всего одно, но бывает и два. Например, Положение мероприятия, Счет, Трансфер и так далее...
У меня сразу возникает два варианта:
1. Хранить в базе в одном поле в виде названия файлов, например, json формате.
2. Сделать отельную связующую таблицу event_doc (one to many). Где буду хранить все документы мероприятия.
Таблица будет выглядеть так:
id | event_id | name | type
Да и вообще всегда сомневаюсь когда делать отдельную таблицу, а когда можно запихнуть всё в одно поле в одном из форматов, например, json или просто через запятую.
Да и вообще всегда сомневаюсь когда делать отдельную таблицу, а когда можно запихнуть всё в одно поле в одном из форматов, например, json или просто через запятую.
Если структура данных вариативна (у мероприятия может не быть положения или их будет пять) и по ним не нужно будет осуществлять фильтрацию, то допустимо хранить сериализованно в одной колонке. Во всех остальных случаях лучше денормализовать.