Как лучше хранить данные в БД?

292
22 июня 2017, 04:15

Стоит задача создать магазин с разными предметами. Я решил каждому предмету давать уникальный ID и если человек купил что либо то записывать в таблицу информацию:

|---------|----|
| Человек | ID |
|---------|----|

Человек - ID это будет уникальным ключом, но в магазине будет около 500 предметов и выходит если у человека будет все куплено то только для него одного будет выделяться 500 строк. Можно ли это реализовать как то лучше?

Answer 1

Если в общем, то верная логика. То, что будет 500 записей, если покупатель купил все 500 предметов, то этому можно только радоваться))) MySQL рассчитана на нагрузки в десятки и сотни миллионов строк на таблицу.

Другое дело, что на этапе проектирования желательно заранее предусмотреть тот факт, что у продукта может быть несколько артикулов. Лучше используйте SKU_ID для единицы товара (его используем также и в таблице заказов), а за вывод товарной карточки пусть отвечает PRODUCT_ID (который может иметь несколько SKU_ID). Это актуально для товаров с большим набором артикулов для одной и той же позиции (например, косметика - разные объемы, цветовые гаммы, одежда - разные размеры, цвета, электроника - разные цвета, комплектации).

READ ALSO
Обязательно ли в типе параметра функции/процедуры указывать длину?

Обязательно ли в типе параметра функции/процедуры указывать длину?

Обязательно ли при указании типа параметра функции или хранимой процедуры указывать длину? Например, есть хранимая процедура:

266
проблема с кодировкой при записи в базу mysql на heroku

проблема с кодировкой при записи в базу mysql на heroku

Здравствуйте, перенес таблицу на heroku таблица в utf-8Всё отображается нормально, но если сделать новую запись, русские символы отображаются...

347
уникальный идентификатор в итерации

уникальный идентификатор в итерации

Добрый деньПодскажите начинающему шаману как реализовать следующее

377
SQL подсчёт количества связанных записей

SQL подсчёт количества связанных записей

Доброго времени суток! Использую СУБД MySQL в связке с PhpMyAdmin, при создании связей между таблицами появился вопрос: "Можно ли получить количество...

416