Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте.
Столкнулся с проблемой, найти какой-либо вразумительной информации по её решению не получилось, единственный вариант – большие книги-толмуды по MySQL, а хочется услышать четкий и емкий ответ.
Планирую БД для каталога товаров. Каждый товар может быть представлен в нескольких магазинах, соответсвенно цен на один товар может быть несколько, также в одном магазине может находиться N товаров.
Классический вариант
Products:
idProd
name
manufacture
image
views
category_id
subcategory_id
Shops:
idShop
name
address
description
logo
site_url
email
tel
working_time
Prices
idPrice
idProd
idShop
price
Подскажите пожалуйста, верно ли я составил таблицы, какие связи должны в таблицах ,либо если есть какая-то статья/пример подобной направленности, где бы описывались связи итд.
Я так понимаю уникальные поля таблиц надо делать Primary Key, а в другой таблице, в которую нужно передавать PK делать Foreight Key...
В чем преимущества такого подхода? (например если вместо этого просто бы писали в idShops из таблицы Prices - idShop из таблицы Shops)
Стоит ли выделить производителей, если они повторяются в товарах?
Построел зависимость в DB 4 Design как представлял это себе:
http://img28.imageshack.us/img28/6325/56368204.jpg
Буду рад любым советам!
Неактивен
absmaks написал:
Я так понимаю уникальные поля таблиц надо делать Primary Key, а в другой таблице, в которую нужно передавать PK делать Foreight Key...
В чем преимущества такого подхода? (например если вместо этого просто бы писали в idShops из таблицы Prices - idShop из таблицы Shops)
Внешний ключ гарантирует вам целостность данных. Удалите вы магазин и останутся у вас товары с номером несуществующего магазина. А если потом добавите новй магазин с прежним номером, то... Или сразу добавите товар с несуществующим номером магазина.
Можно конечно писать собственные обработчики, но зачем если есть внешний ключ, тем более он будет работать быстрее чем ваши обработчики.
Подробнее о внешних ключах см http://webew.ru/posts/219.webew
absmaks написал:
Стоит ли выделить производителей, если они повторяются в товарах?
А какую цель вы этим преследуете. Рекомендую посмотреть очень содержательное обсуждение как раз на эту тему - http://sqlinfo.ru/forum/viewtopic.php?id=209
Неактивен