0

这让我很头疼,我真的需要帮助!这是我想要实现的目标。

我有一个表名产品。产品可能有也可能没有最多两个可选字段。示例颜色和大小。

如果产品没有可选字段,则只有一行价格和数量,否则对于每一行可选字段,将有一个价格和数量。

我知道这听起来令人困惑,请原谅我。我也很困惑。):但我可以在下面给你们几个例子。

所以一百万美元的问题是,我应该创建哪些表格和字段?


[没有可选字段的产品]

价格 | 数量

$1.00 | 2


[具有一个可选字段的产品]

价格 | 数量 | 尺寸

$1.00 | 2 | 大的

$2.00 | 1 | 小的


[产品有两个可选字段]

价格 | 数量 | 尺寸 | 颜色

$1.00 | 2 | 大 | 绿色的

$2.00 | 1 | 小 | 蓝色的


我想出了一个想法,让两个名为 Product 和 Optional 的实体与 Optional Entity 建立多对多关系来存储字段名称,例如 Size 和连接实体名称 Product_Optional 将存储值,例如 Large。

但是我仍然遇到如何将一个产品的两个可选字段绑定到相同的价格和数量的问题!抱歉让您感到困惑:(

4

2 回答 2

1

编辑:

由于您的选择未知,您可以执行以下操作

产品

id
product_name
product_description
...

产品选项

id
option (size, color, whatever)
value (large, blue, anything)

产品库存

id
product_id
product_option_id
quantity
price

然后您在 ProductInventory 中的记录将如下所示:

1 | 1 | 1 | 5 | 2.00
1 | 1 | 2 | 3 | 3.00

等等等等

更详细的例子,使用上面的表结构:

产品

1 | Product 1 | Prod 1 Description
2 | Product 2 | Prod 2 Description
3 | Product 3 | Prod 3 Description

产品选项

1 | Size | Small
2 | Size | Medium
3 | Size | Large
4 | Color | Blue
5 | Color | Red
6 | Color | Green
7 | Width | 10 Inches
8 | ... (as many as you want)

产品库存

1 | 1 | 1 | 5 | 2.00
(says for product 1, size small, there are 5 quantity, and cost is 2.00

2 | 1 | 2 | 17 | 3.00
(says for product 1, size medium, there are 17 quantity, and cost is 3.00

ETC

于 2011-03-08T20:18:50.610 回答
0

我遇到了同样的问题,我认为您还需要一张以上的桌子。尝试这个:

产品

id
product_name
product_price
.....

Product_options

id
product_option_name

product_options_values

使用 product_options_id 作为外键将您的 product_options_values 链接到您的 product_options。示例:product_option 'size' 的 product_option_values 为 'small'、'medium'、'large'*

id
product_options_id (fk)
options_value
options_value_price

product_options_to_products

此表将您的产品链接到您的选项。在这里,您可以为不同的产品分配不同的选项。

id
product_id
product_options_id
于 2011-03-09T00:41:26.187 回答