@NoName_0

Хранение массива в базе данных?

Стоит задача , нужно как-то хранить описание и характеристику товаров в бд , при том что у разных товаров разной длинны характеристика и описание ? остановился на том , что можно сериализовать массив (с произвольной длинной и кол-вом элементов , как мне и нужно) в строку и уже эту строку пихать в бд.. Так вот , насколько это вообще правильно и есть ли альтернатива этому ? как хранят описание и характеристики популярные интернет-магазины ?
  • Вопрос задан
  • 3109 просмотров
Решения вопроса 3
qonand
@qonand
Software Engineer
Хранить такие данные в сериализованом массиве вообще не тру. Для таких задач либо создаются три таблицы:
- Товары
- Характеристики
- Значение характеристики для товаров
либо используются NoSQL базы данных. А выбор из этих подходов стоит делать исходя из требований и нагрузок Вашей системы.
Ответ написан
Комментировать
@JuniorNoobie
Сижу в поддержке, пишу мелкие проекты
Ну по-разному хранят... Обычно это куча связанных таблиц. Например, есть таблицы "Товары" и "Свойства". Связь "многие-ко-многим", т.е. есть еще результирующая таблица ТоварыСвойства, которая выглядит как-то так: id, id_товара, id_свойства. И таких таблиц в БД пруд пруди... Как хочешь так и хранишь.
Ответ написан
@crazyhat
Web разработчик
Ну могу предложить достаточно спорный метод, но я видел его в одном или паре рабочих проектов. Хранить массив в JSON формате в таблице.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@evgeniy_lm
во всех известных мне базах данных есть тип BLOB (или как-то так) туда можно пихать что угодно хоть текст, хоть картинки, хоть видео, хоть все сразу
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы