db设计关系-产品、类别、属性

esbemjvw  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(327)

我有两张table:
产品(id、名称、类别\U id)
类别(id、名称)
我想用产品属性添加第三个属性,但是属性是按类别指定的。会是这样吗?
属性(id、名称)
属性产品(属性标识、产品标识、值)
属性\类别(属性\ id,类别\ id)

vfh0ocws

vfh0ocws1#

你有3个“实体”(到目前为止)--产品,类别,属性。这些是table。
基本上你可以拥有两种“关系”:“一对多”和“多对多”。前者只需要一个 id 在一个表中链接到另一个表。后者需要一张额外的table,上面有两张table ids .
决定你的实体之间有什么关系。
工作完成了。

vu8f3i0k

vu8f3i0k2#

根据您的问题做出的假设:
一个产品只能有一个类别
你说过属性是按类别指定的
因此,将属性链接到类别。类别x的产品将自动继承属性。

但是,这会强制值和属性。所以所有的产品都有相同的属性值(例如,所有的产品在笼子里的衣服将是相同的颜色!)因此,您希望同一类别中的不同产品的属性值不同:

这样,属性的名称(如果需要的话它是存在的)链接到一个类别,而值链接到一个对象。我假设每个对象需要多个属性,每个属性需要一个类别。
前任:
类别:服装
产品:衬衫
凝块的属性:大小和颜色
属性值:l和蓝色
所以,所有这些都表明你最初的想法是好的(!)。

相关问题