智能数据库设置/布局

时间:2018-02-12 14:56:23

标签: mysql database installation structure e-commerce

我需要有关电子商务网站数据库设置的提示。让我们说我有几种颜色和尺码的同一件连衣裙叫做#34; Cool Fancy Dress"。我需要以可持续的方式在数据库中以某种方式保存这些信息。我对数据库没有太多经验,但我想我们不可能只在一行中保存具有所有不同选项的单个产品。那么如何才能最好地完成这项工作呢?

我们说我有100种不同的产品。对于他们每个人,我也有不同的颜色和大小,所以它显着超过一百。是否有一种方法可以创建"子类别"对于每种产品,我们是否可以在那里存储特定产品的可用颜色和尺寸?或者我们应该将所有不同的选项保存为单独的产品,即使它们都是相同的产品?如果是这样,我如何以聪明的方式匹配它们?相同的product_id?

搜索产品名称和某种ID应该会为我提供所有不同的选项。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

假设您正在使用关系数据库(例如MySQL),您应该查找数据库规范化"。

基本上,您希望将所有产品保存在一个表格中,将所有产品版本保存在另一个表格中,然后按产品ID加入。

您的产品表格如下所示:

-------------------
id | name | price |
-------------------
1  | Shirt | 100  |
-------------------
2  | Pants | 120  | 
-------------------

你的版本表是这样的:

--------------------------
id | product-id | colour |
--------------------------
1  |      1     | Blue   | 
--------------------------
2  |      1     | Green  | 
--------------------------
3  |      2     | Blue   | 
--------------------------
4  |      2     | White  | 
--------------------------

您也可以将每个选项保存为单独的产品,正如您自己提出的那样,在这种情况下,我的建议是拥有两个ID,每个选项一个,每个产品一个,在其选项之间共享。