我想存储一个卖家列表,每个卖出一个类别的产品,然后每个卖家都会有产品来自这些类别。
设计这个的最佳方法是什么?目前,我所拥有的是以这种方式设计的三个表,卖家,类别和产品。
如何链接卖家和类别?我觉得我在这里创造了太多的关系。
一种方法是创建一个带有SellerId和CategoryId索引的单独表。另外,我想我还需要一个单独的表来表示SellerId和ProductId。有没有更好的方法来实现这种设计?
1个卖家可以有多个类别,
1个类别可以有多个卖家,
1个类别可以有多个产品,
1个产品可以再次拥有多个卖家,
1个产品只能有1个类别,
最后, 1个卖家可以有多个产品。
答案 0 :(得分:1)
根据您的更新,请考虑此结构......
Seller
----------
ID
etc.
Product
----------
ID
CategoryID
etc.
SellerProduct
----------
SellerID
ProductID
Category
----------
ID
etc.
在这种情况下:
卖方是否需要链接到卖方没有产品的类别?如果没有,这个结构应该可以解决问题。如果卖方需要链接到另一个类别,则卖方只需链接到该类别的产品。
通过将类别降级为值类型而非其自己的实体,您不需要将其他实体链接到它。