@ebbk

Как хранить ID категорий в базе?

Драстите, подскажите в каком виде хранить id категорий в базе в записи.
Держать их в одном поле через varchar каждый id через запятую, или создать несколько int полей для хранение там id ?
Как сделать чтобы позже удобно было сделать фильтр по категориям, где будет мульти селект с категориями
  • Вопрос задан
  • 188 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Стандартно - в отдельной таблице связи многие-ко-многим.
Современный способ - в колонке с типом JSON.
Говнокод - в строке через запятую или другой разделитель.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Для нормальных разработчиков, а не хипстеров, разъясняем:

"В колонке с типом JSON" - это не современный хайповый способ, а очень редкий вариант, которые следует применять не где попало как советует тов. Rsa97, а с большой осторожностью и только в предназначенных для этого случаях: а именно, когда структура хранимых данных не определена.

В данном же случае необходимо использовать стандартный способ со связанной таблицей. Поскольку при использовании стандартных методов хранения можно пользоваться всеми возможностями, которые предоставляет БД, такими как контроль целостности данных, компактность хранения, использование в индексах и так далее. Не говоря уже о простоте запросов и поддержке со стороны существующих библиотек.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы