ОБНОВЛЕНИЕ
Вот моя текущая диаграмма базы данных для онлайн-обуви, которая будет продаваться
- обувь, которая будет иметь разные категории (каблуки, танкетки, сандалии, скидка на каблуки и т. д.)
- каждая обувь будет иметь разный цвет, разный размер. для каждого цвета и размера,
- у него будет другой запас и, возможно, другой тип заказа (готовый запас / предварительный заказ)
- для каждого размера и цвета, возможно, у него будет разная цена
- и каждая обувь разного размера и цвета, они (возможно) будут иметь разное изображение, а не общие
я делаю это правильно? что я должен сделать, чтобы улучшить эту базу данных? я действительно очень ценю любые отзывы / вклад / критику
ЗАВЕРШИТЬ ОБНОВЛЕНИЕ
я новичок в дизайне баз данных и путаюсь с дизайном базы данных для интернет-магазина (база данных MySQL)
Скажите, что интернет-магазин будет продавать обувь разного цвета, размера, с разным запасом и ценой для каждого цвета и размера.
Я придумал эти таблицы:
универсальная_обувь
id
name
category_id
details
image
цвета
id
color
размеры
id
size
size_details
конкретные_обувь
id
generic_shoes_id //references to generic_shoes
name // if the owner wants to make another name, if not then use generic_shoes' name
order_type //ready stock or pre order
затем я придумываю сводные значения colors_shoes и size_shoes с отношением «многие ко многим»: colors_specific_shoes
id
color_id
specific_shoes_id
размеры_конкретной_обуви
id
size_id
specific_shoes_id
тогда я думаю, что цвет и размер diff будут иметь запас diff и, возможно, другую цену, поэтому я придумал:
обувь_продукт_детали
id //will be used in the orders table
colors_shoes_id //reference to pivot colors_shoes
sizes_shoes_id //reference to pivot sizes_shoes
specific_shoes_id //reference to specific_shoes
stock //each color and size will have diff stock
price //each color and size maybe will have diff price
weight //each size will have different weight
я думал, что эти таблицы будут работать нормально, но потом я подумал, должен ли я использовать эту таблицу вместо этого?
удалить :
- размеры_специфические_обувь
- colors_specific_shoes
и просто используйте идентификатор цвета и идентификатор размера в таблице Specific_shoes_details: (в приведенной ниже таблице я просто ссылаюсь непосредственно на таблицу цветов и размеров)
таблица подробных сведений о конкретном продукте
id //will be used in the orders table
color_id //reference to colors table
size_id //reference to sizes table
specific_shoes_id //reference to specific_shoes
stock //each color and size will have diff stock
price //each color and size maybe will have diff price
weight //each size will have different weight
я думаю, проблема в том, что с последней таблицей -> каскад внешнего ключа, если цвет/размер удалены, тогда он также удалит строку Specific_shoes_details.
кто-нибудь может дать мне лучший подход? потому что я не знаю, какой метод мне следует использовать, первый со сводной таблицей цвета и размера или последний.
Спасибо
я был бы очень признателен за любую помощь/отзыв