|
|
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Привет! Я проектирую БД для продажи обуви. Таблица Models: Id Name PriceForOnePair Count Таблица Checks: Id CurrentDate Customer'sName Таблица ModelsInCheck: Id ModelId Count CheckId Подходящий ли вариант для данной задачи ? Добавлять поля Приходы, Остаток и т. д. не нужно. Самый простой вариант для оформления заказа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2016, 11:02 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
spiderman5, Нужно правильно разделить таблицы на справочные и транзакционные. Поля "цена" и "кол-во" - это изменяющаяся информация и хранить ее в справочной таблице (модели) не рекомендуется. Как вариант : 1. Models (id,name) 2. Model_price (id,model_id,date_pr,price) 3. Model_quant(id,model_id,date_qt,quant) 3. Customers (id,name) 4. checks (id,date,model_id,customer_id,quant,price) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 09:29 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Подходящий ли вариант для данной задачи ?Варианта пока нет. :) Там будет не менее 10-20 таблиц. Это курсач ? Если реальная задача, то заказчиков мне искренне жаль... Вам пока рано что либо проектировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 15:12 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Cristiano_Rivaldo, А зачем цену и количество моделей вытаскивать в разные таблицы? Почему бы не сделать одну - Ассортимент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 17:07 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Марков Илья, Нужно различать понятия "Учетная цена" и "Товарный запас на дату". Твой вариант тоже подходит , но в таком случае если цена остается постоянной - то каждый раз значение поля price будет одно и тоже и ты вынужден хранить все эти значения в БД вместо того чтобы выделить под это всего одну строку немного сэкономив места на сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 18:57 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Cristiano_Rivaldo, Я так понимаю ему нужно просто оформление заказа без истории цен и количества. Да и с историей я бы пожалуй всё равно оставил одну таблицу Ассортимент (с текущими записями) + 1 (или 2) таблицы для истории. Хотя тут уже вопрос о методе хранения истории))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 19:09 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Cristiano_Rivaldo, Хотя нет. Сделал бы Ассортимент (текущие записи) + История ассортимента в виде EAV :D ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2016, 19:12 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
spiderman5Добавлять поля Приходы, Остаток и т. д. не нужно. Самый простой вариант для оформления заказа. Посмотрите рисунок, думаю подойдет, ну и комментарии: 1. В таблице Models поле Count не нужно, мы же не делаем Приходы, Остаток и т. д. 2. У меня таблица Pay это строки чека (типа вашей ModelsInCheck) и в ней: - Kvo это количество проданной модели в чеке - Cena1 это цена, равная Price из Models на момент продажи, таким образом мы фиксируем цену продажи действующую при покупке и отвязываемся от дальнейшей возможной переоценки Price в Models - Cena2 это цена, по которой продали реально! - Соответственно имея потом Cena1, Cena2 и Date_Time можно вычислять и размер скидок (если они были) и знать приблизительную историю цен. 3. Не называйте поля в БД именами возможных функций субд типа Count, CurrentDate... Еще раз акцентирую для умных - это при условии что spiderman5Добавлять поля Приходы, Остаток и т. д. не нужно. Самый простой вариант для оформления заказа. коню понятно, что нужен и классификатор и LSVВарианта пока нет. :) Там будет не менее 10-20 таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2016, 08:47 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Марков ИльяCristiano_Rivaldo, А зачем цену и количество моделей вытаскивать в разные таблицы? Почему бы не сделать одну - Ассортимент? Есть такая фигня - нормалиция называется. Вот поэтому... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2016, 16:46 |
|
||
|
Правильность проектирования БД "Товары и заказы"
|
|||
|---|---|---|---|
|
#18+
Завтра появятся скидки на лабутены Поэтому отдельно история цен http://www.sql.ru/forum/620607/shablony-primeneniya Нужно знать запасы, чтобы выявлять где надо довезти запас и анализировать спрос http://www.sql.ru/forum/622860/shablon-resursy-nakopleniya Наконец обувь одного артикула (если вы конечно ходите в магазин) зачастую делится по цвету и размеру ну и половая/возрастная ориентация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2016, 12:38 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=39267627&tid=1540307]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
151ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 488ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...