我有四张桌子(产品,品牌,颜色和颜色产品) - 产品有一个品牌 - 一种颜色有一个品牌 - 颜色产品有一种产品和一种颜色
我看到的问题是颜色产品引用了颜色和产品,并且它们都引用了品牌。 如果相同颜色产品引用的产品和颜色引用2个不同的品牌,会发生什么?
我认为我的数据库很糟糕,但我不知道如何修复它。 我使用Doctrine 2 ORM,我在他们的文档中读到,如果可能的话,应该避免使用复合主键。你能看到解决我问题的方法吗?
谢谢
答案 0 :(得分:0)
在我看来,不需要有颜色的品牌。
它为您提供了两种选择,将品牌存储在产品中,或将品牌存储到颜色产品中。
我认为将品牌仅存储在产品中是有意义的,它会完全解决您的问题,因为颜色与品牌完全无关,因此将品牌与颜色产品相关联并不一定有意义。