【问题标题】:Designing a complex SQL structure设计复杂的 SQL 结构
【发布时间】:2016-04-23 10:16:43
【问题描述】:

我必须设计一个相当复杂的 SQL 结构。

我正在制作一个产品分配面板,您可以在其中从公司订购电子烟液体。

每种液体都有自己的体积、尼古丁毫克数、名称和品牌。 我想让管理面板易于使用。管理员只需添加具有名称和品牌的产品,然后添加体积和功率(尼古丁)。

我正在考虑制作一个包含产品(品牌和名称)的主表,然后是体积和功率的表,但当我考虑时,这是一个非常糟糕的主意......同时在表中制作一个列功率,然后将一组功率串起来,比如 10mg、20mg、18mg 是错误的。

我应该怎么做?

【问题讨论】:

    标签: mysql sql database data-structures


    【解决方案1】:

    根据新的要求,我认为最好有图片中描述的 db 架构。

    您有products 表和volumespowersnicotine 表。 如果product 表中的产品有容量、功率或尼古丁,则在相应的表中会有一条带有相关product_id 的记录。

    一个品牌可能有很多产品,每个产品可能有也可能没有尼古丁、能量或体积属性。例如,如果一个产品有nicotine 属性,那么在nicotine 表中有一条记录与这个product_id。如果不是,nicotine 表将不包含具有此product_id 的记录。同样的规则适用于powersvolumes

    【讨论】:

    • 嗯,我只喜欢了5个品牌,但是每个品牌都有几十个产品,还是结构好吗?
    • 以后有可能加入新品牌吗?
    • 如果我只制作一张包含品牌名称产品名称、产品 ID、尼古丁和体积的表格,会不会更糟?
    • 是的,但实际上最多有 5 或 6 个品牌
    • 是的,情况会更糟,因为您需要为该表中的每个产品复制品牌名称。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    相关资源
    最近更新 更多