Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Проектирование БД


Автор: pokora 4.8.2010, 15:35
Всем Привет!

Задача такая, нужно написать БД аля Касса для магазина.
я создал 3 таблицы. Товары, Цена и продажи. в виду того что со временем у товара может меняться цена я связал эти таблицы 2мя способами.
первый
http://ipicture.ru/
второй
http://ipicture.ru/
в таблице Продажа должно записываться номер товара и текущую цену

как правильно это спроектировать?
ваши варианты...

Автор: pokora 5.8.2010, 00:42
может в таком случае вообще не создавать таблицу  Цена, а каждый рас переписывать в Продажу цену с таблицы товаров???
но мне кажется это будет засорять, или нет?

Автор: Любитель 6.8.2010, 22:30
С точки зрения нормальной структуры:
1. Цена может менять не только при продаже (если только - то отдельно её хранить смысла нет)
2. Имеем таблицу товаров и историю цен. Продажа привязывается к какой-то исторической метке.

На практике я бы денормализовал структуру и хранил товары, историю цен и продажи, привязанные к товарам с готовыми колонками цены и даты продажи.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)