@Anonymous85966

Насколько правильно написана корзина товаров в базе данных?

Имеется база данных, которая представляет собой корзину.В ней хранятся товары, находящиеся в корзине у определенного пользователя.У каждого товара в бд есть ячейка, в которой хранится id товара, название и email пользователя, которому этот товар принадлежит.После авторизации на странице с названием "Корзина" выводятся из бд все товары, у которых ячейка email совпадает с email пользователя.SQL запрос:"SELECT * FROM DBNAME WHERE email='$email'". Проблема в том, что все товары в бд скинуты в кучу.Такая архитектура замедляет скорость поиска и извлечения?
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
kocherman
@kocherman
Должна быть отдельная таблица с пользователями, их id и их email, прочим описанием (например, users).

Должна быть отдельная таблица с товарами и описаниями (например, goods).

Дальше отдельная таблица связанная с таблицей goods по полю id, указывающая на цену товара на конкретную дату (например, prices).

Дальше нужна таблица заказов с номером заказа orderID, пользователем userID (например, orders).

И ещё одна таблица, которая связывает между собой таблицу заказа orders и таблицу товаров goods по полям orderID, goodID, amount (кол-во товара). Eё можно назвать order_goods;

Везде связываешь данные между таблицами только числами c созданными на них индексами. Индексы по первичным ключам создаются автоматически.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы