我正在做一个引用创建工具。有一个表将存储所有客户信息。然后有一个报价表,它将共享customer_id密钥并存储报价的所有细节。
我想存储报价表中引用的产品的所有详细信息。现在有了购物车,您将拥有一个产品表,其中包含所有产品详细信息和交叉参考,但由于此产品没有设定数量的产品,因为所引用的产品几乎是无限的,大多数只会引用曾经且价格各不相同。
因此,在将来引用报价时,我想知道原始报价中的所有产品及其相应的数量和价格。
现在,我能想到这样做的唯一方法是为每个创建的引号创建一个新表,并使用唯一的quote_id为表名添加前缀,但这可能会让很多表格变得非常混乱 - 当然有更好的表格 - 如果你能想出更好的方法,请帮忙。
谢谢,希望我能解释清楚。
答案 0 :(得分:0)
您可以交叉引用products表,但可以复制可能更改的任何信息。这意味着您既可以获得创建报价时的信息,也可以获得返回每个产品当前数据的链接。
e.g。 QuoteProduct表(行情与产品通过QuoteProduct有很多关系):
--------------- ------------------ --------------- | PRODUCT | 1:many | QUOTEPRODUCT | many:1 | QUOTE | | ProductId |--------<| QuoteId |>-------| QuoteId | | Price | | ProductId | | DateCreated | | Description | | Price | | Description | --------------- | Description | --------------- -----------------
您可以为QuoteProduct提供自己的主键,也可以将其设为ProductId,QuoteId。如果您希望在单个报价中多次使用相同的产品,但价格不同等,则可能需要为其提供自己的主键。
答案 1 :(得分:0)
创建一个新表,将其称为quote_items
。基本上,此表包含报价中所有产品的副本,其价格与报价制作时的价格相同。此quote_items
表将引用ID作为外键。
要创建报价,请在报价表中创建一个新条目,然后将报价中的所有项目复制到quote_items
表中,并使用刚创建的报价的报价ID。