Структура БД для корзины покупок

Мне нравится разрабатывать сайт корзины покупок с несколькими продуктами. (напр.: мобильный телефон, мебель и т. д.) здесь спецификация мобильного телефона будет охватывать

  • размер дисплея
  • объем памяти
  • операционная система
  • камера и т. д.,

но для мебели - ее технические характеристики полностью отличаются от описанного выше электронного продукта.

  • тип дерева
  • цвет
  • вес
  • форма
  • стекло или матовая поверхность и т. д.,

Мой вопрос: как обращаться с общей таблицей базы данных для спецификации продукта? каждая и каждая категория продукта и его спецификация будут отличаться - так как иметь общую таблицу ProductSpecificationTable?

Я искал много сайтов, в том числе Google.. но не смог получить идеальную душевность. Пожалуйста, помогите мне перейти к следующему шагу.

3 ответа

Задайте себе вопрос: как я могу создать такую ​​базу данных? Прежде всего, вам нужны продукты. Каждый продукт должен быть в какой-то категории, и каждая категория должна иметь свои свойства. Итак, вы должны создать таблицу продуктов с уникальным идентификатором, и каждому продукту нужен идентификатор категории. В этот момент пришло время связать вашу таблицу свойств с вашей таблицей категорий (по идентификатору) и установить значения, вам нужна таблица 'property_value'.

**table:**         **id**
product        --> category id
property       --> category_id
property_value --> property_id

Я надеюсь, что вы поймете мое объяснение, иначе просто спросите:)

Вы можете добавить еще 1 таблицу для достижения этой цели. Таблица, которая содержит cat_id, product_id и свойство. Это отношения многие ко многим. Я верю, что таким образом ты сможешь достичь этого.

Этого можно добиться с помощью одной таблицы в базе данных, но это усложнит операции CRUD над таблицей. Поэтому я рекомендую вам создать одну базу данных, например, "Инвентарь", в которой может быть несколько таблиц (по одной таблице для каждого типа продукта).

Первая таблица может быть списком типов продуктов, которые у вас есть (мобильные телефоны, аксессуары, мебель):

введите описание изображения здесьВы можете использовать эту таблицу, чтобы заполнить свой список доступных предметов. Здесь столбец _table_name будет содержать фактическое имя таблиц.

Тогда для каждого продукта вы можете иметь разные таблицы с разным количеством столбцов:

Таблица типов мобильных телефонов:введите описание изображения здесь

Стол для продукта Тип мебели:введите описание изображения здесь

Я надеюсь, это поможет.

Другие вопросы по тегам