代码之家  ›  专栏  ›  技术社区  ›  Gabriel Solomon

可配置产品eshop的数据库设计建议

  •  0
  • Gabriel Solomon  · 技术社区  · 16 年前

    我正在建立一个电子商店,将有可配置的产品。可配置部件需要与主产品有不同的价格和库存。 在这种情况下,哪种数据库设计最好?

    我是从这样开始的。

    特征

    • 身份证件
    • 名称

    功能选项

    • 身份证件
    • IDI特征
    • 价值

    产品

    • 身份证件
    • 名称
    • 价格

    产品特点

    • 身份证件
    • ID-乘积
    • IDI特征
    • 值(保存功能选项中的值以便于搜索)
    • 可配置(是,否)

    问题是,现在我被困在如何保存可配置的产品特性上。 我想把它们的值保存为json。但这将使为某一选择保留价格的修改变得困难。

    你会怎么做?

    谢谢您。

    1 回复  |  直到 15 年前
        1
  •  2
  •   bobah    16 年前

    再给我两张桌子(见下图)。像json或可解析文本字段这样的黑客可以而且应该永远避免。

      -- one product <id_product> can have multiple
      -- product variants <id> with different features  enabled
      product_variant
        id
        id_product (one product - many variants)
    
      -- features, enabled for certain <id_product_variant>
      product_variant_enabled_feature
        id
        id_product_variant (one variant - many features)
        id_product_feature
        unique_constraint(id_product_variant, id_product_feature)