[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите грамотно спроектировать БД
Stormpfp
Задача:
Есть товар. у него несколько характеристик(разные только значение).
Можно доб./удалить товар.
Можно редактировать количество характеристик сразу у всех товаров(добавить или удалить характеристику), значение(отдельно у каждого товара) и имя (сразу у всех товаров).

Как правильно это спроектировать ?
У меня мысль в 2 таблицы распихать.
1) id(автоинкремент) и имя характеристики(char).
2) список товаров и характеристик
поля: |товар|хар1|хар2|хар3| ,но не очень удобно добавлять характеристику

Реально ли создавать отдельную таблицу для каждого товара или лучше создавать отдельную таблицу для каждой характеристики (их предполагаеться не много <10 шт.)

Подскажите как правильно это организовать ?



Спустя 21 минута, 52 секунды (25.08.2009 - 10:49) Sylex написал(а):
Stormpfp
делай 2 таблицы и не парься

TABLE Tovar
t_id INT PRIMARY KEY
t_name VARCHAR(100)

TABLE parameters
tovar_id - INT ID товара
param1
param2
param3
...

в принципе можно и в 1 таблицу все загнать

Спустя 34 минуты, 51 секунда (25.08.2009 - 11:24) waldicom написал(а):
Такие вещи делаются обычно с использованием трёх таблиц:
1. Товар
2. Характеристики
3. Какие товары имеют какие характеристики

Отношение между ТОвар и Характеристики - n:m, отсюда и третья таблица

Спустя 1 час, 27 минут, 15 секунд (25.08.2009 - 12:51) Stormpfp написал(а):
Цитата
Такие вещи делаются обычно с использованием трёх таблиц

Спасибо так и сделал.

Спустя 5 часов, 27 минут, 18 секунд (25.08.2009 - 18:18) Sylex написал(а):
если предполагается, что каждый товар имеет один набор характеристик - то 2 таблицы

Спустя 16 часов, 59 минут, 28 секунд (26.08.2009 - 11:18) Stormpfp написал(а):
Цитата (Sylex @ 25.08.2009 - 15:18)
если предполагается, что каждый товар имеет один набор характеристик - то 2 таблицы

Согласен , но я решил подстраховаться и сделал 3 таблицы.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.