我需要有关电子商务网站数据库设置的提示。让我们说我有几种颜色和尺码的同一件连衣裙叫做#34; Cool Fancy Dress"。我需要以可持续的方式在数据库中以某种方式保存这些信息。我对数据库没有太多经验,但我想我们不可能只在一行中保存具有所有不同选项的单个产品。那么如何才能最好地完成这项工作呢?
我们说我有100种不同的产品。对于他们每个人,我也有不同的颜色和大小,所以它显着超过一百。是否有一种方法可以创建"子类别"对于每种产品,我们是否可以在那里存储特定产品的可用颜色和尺寸?或者我们应该将所有不同的选项保存为单独的产品,即使它们都是相同的产品?如果是这样,我如何以聪明的方式匹配它们?相同的product_id?
搜索产品名称和某种ID应该会为我提供所有不同的选项。
有什么建议吗?
答案 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,每个选项一个,每个产品一个,在其选项之间共享。