|
|
|
Посоветуйте по структуре базы.
|
|||
|---|---|---|---|
|
#18+
День добрый! Делаю свой первый pet-project java+web+реляционная база, нужна помощь! Я хочу организовать сделать что-то типа интернет магазина и вот теперь думаю как мне организовать запрос информации через URL и соответствующее этому запросу хранение. Итак, у меня есть разные категории товаров: Машины Наши ВАЗ ГАЗ грузовые легковые Импортные Мазда При этом количество категорий в каждой родительской категории - разное (то есть мазды не бывают грузовыми, а вот газы - бывают.) Я думаю как мне теперь построить структуру базы так, чтобы она соответствовала запросу по URL и какой это должен быть запрос. Я полазил по интернет-магазинам и обнаружил, что для вывода нужной группы товаров обычно используют один из 3 вариантов URL запроса: 1) запрос типа category1=categoryname1&category2=categoryname2, ну тут понятно, это почти готовый sql запрос. 2) запрос типа category = categoryname, то есть запрашивают только последнюю категорию по ее уникальному id - удобно, но придется делать общую таблицу товаров которая свяжет товар_id-category_id, причем каждый товар там будет по много раз, а затем надо будет в запросе как-то объединить id найденных товаров с таблицей товар_id - (данные о товаре для показа) и все это вернуть. это вообще возможно? так делают? 3) запрос типа categoryname1/categoryname2/categoryname3, то есть названий категорий не пишут, а значит первая категория соотв. первой колонке в таблице итд. а если я хочу наложить доп. условие типа "только дешевые машины" то похоже что я не смогу этого сделать, и кроме того, для показа по другой схеме (например первая категоризация не по стране-производителю, а по маркам) придется создавать таблицы с теми же данными но в другом порядке, так? Собственно вопросы: 1) правильно ли я все это понял? 2) как лучше cделать? 3) стоит ли делать свою таблицу для разных категорий товаров? Спасибо за внимание! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2010, 10:35 |
|
||
|
Посоветуйте по структуре базы.
|
|||
|---|---|---|---|
|
#18+
Нашелся пароль.... Под categoryname я имел ввиду значение категории, то есть "грузовая", "ВАЗ". А просто category - название соотв. колонки: "тип машины", "марка". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2010, 10:40 |
|
||
|
Посоветуйте по структуре базы.
|
|||
|---|---|---|---|
|
#18+
Dymytry_unregСобственно вопросы: 1) правильно ли я все это понял? 2) как лучше cделать? 3) стоит ли делать свою таблицу для разных категорий товаров? п.1. Если честно - я тебя непонял, поэтому понять что ты понял или нет просто нереально. п.2. Правильно. Т.е. так как поставлена задача. п.3. См. п.1. Эта тема уже настолько истоптана что разжевывать там нет чего. А запросы отдаются исходя из того какой фильтр вы задали. Т.е. чем более точный фильтр тем длиннее запрос и меньший результат, т.к. попадание в индекс по более точному фильтру будет выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2010, 12:23 |
|
||
|
Посоветуйте по структуре базы.
|
|||
|---|---|---|---|
|
#18+
Злой Бобр, в любом случае спасибо за попытку. Попробую еще раз. Я проектирую интернет-магазин. Мне нужны советы по тому какие именно таблицы делать. Я считаю, что проектирование таблиц плотно связано с тем, как пользователи буду смотреть мой каталог. Как они будут смотреть каталог? Вводить соотв.URL запрос через меню сайта. То есть буду нажимать на ссылку "товары для детей" и попадать в секцию "товары для детей" где показываются только... товары для детей. Возникает вопрос: что должно быть в URL, чтобы показать только товары для детей и какие таблицы в базе надо для этого создать. Другими словами, я хочу понять как лучше задавать связь между URL и данные из базы. Я полазил в сайтам машазинов и увидел, что обычно для выбора категории которую надо показать используется один из трех вариантов написания URL: 1) точно указать название категории и ее тип: &goodsType=childrenGoods&goodsPrice=cheapPrice&goodsCountry=China: показываем дешевые товары для детей сделанные в китае. 2) указать только ID одной категории. categoryID = 57. При это в таблице в БД должно быть указано что 57 номер соотв. дешевым товарам сделанным в китае. То есть должно быть соотв. many-to-many mapping который соотнесет id всех дешевых товаров сделанных в китае с id категории = 57. 3) на ozon.ru например названия категорий не указывают, а пишут только id: /4567/345345/3455. Значит, чтобы из такого URL получить строки таблицы я должен быть уверен что первая цифра относится к первой колонке, вторая ко второй итд. Вот я и спрашиваю как решить эту задачу, какой способ лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2010, 10:42 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=69&tid=1542480]: |
0ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 286ms |

| 0 / 0 |
