给定产品,产品可能有变化(例如尺寸:小,中,大或颜色:白色,黑色) . 如果产品具有多个变体,则总变化是各个变化的组合(例如,小白,小黑,中白,中黑,大白,大黑) . 每种变体组合将分配其自己的SKU,价格,库存水平等 . 每种变化也将与一般产品细节(例如产品名称,产品描述等)相关联 .
当您不知道变化可能是什么时,对产品变化进行建模的最佳方法是什么?我认为这可能是EAV,但过去我遇到过这个问题 . 想知道是否有更好的方法 .
UPDATE 1:
看完接受的答案后,我还是迷路了 . 似乎我对EAV的不情愿是有根据的 . 所以也许我远离那个解决方案 . 此外,如果我使用EAV,那么总是存在哪些属性,例如价格,SKU和库存水平?我知道那些必须永远存在 - 因此,他们不需要EAV的灵活性 .
@Bill Karwin说他的第一选择是使用类表继承 . 我不确定这对我是否有用 . 我需要存储数万(甚至数十万)条记录 . 我不知道前面会有什么变体(我的代码会知道,因为它可以动态解析XML提要和电子表格 - 但不久之后) . 因此,试图预测此时我需要的其他表格是不可能的 .
所以 - 我还是迷路了 . 如何为产品变体建模?