你能帮我解决这个DB逻辑吗?

时间:2018-06-18 02:21:31

标签: database

所以这更像是一个我遇到的逻辑问题。

有三个表:推销员,买家和产品。

我想知道的是买家购买的产品,购买的产品数量和时间(小时)。为此,我正在考虑生成另一个包含产品表FK的表,买方表中的FK,时间和金额。

这里的主要问题是我无法看到推销员的位置。我想听听你们会带来的逻辑。

这可能是一个非常愚蠢的问题,但如果有人帮助我,我会很高兴。

2 个答案:

答案 0 :(得分:1)

我认为你至少还需要两张桌子。第一个,PURCHASE_PRODUCT用于存储有关销售的一般信息,PURCHASE(purchase_id, purchase_datetime, salesman_id, buyer_id, hours_spent )。 这样的事情应该会给你一个良好的开端。

PURCHASE_PRODUCT(purchase_id, product_id, amount ) 主键 - purchase_id,外键 - salesman_id指Salesman表PK,外键 - buyer_id指Buyer表PK

PURCHASE.purchase_id 主键 - 在purchase_id和product_id上复合,外键 - purchase_id指PURCHASE,外键 - product_id指产品表PK

根据要求,有许多事情可能会改变。您可能希望在purchase_begin表中存储2个日期,例如purchase_endpurchase_datetime代替hours_spentPURCHASE_PRODUCT来跟踪时间;也可以添加一些其他属性(如折扣)。 PURCHASE_PRODUCT(purchase_id, product_id)可以包含购买时的产品价格,也可以包含其他折扣等 您可以决定添加代理主键,即,添加代理主键,而不是列PURCHASE_PRODUCT(PURCHASE_PRODUCT_ID(PK), purchase_id, product_id, amount )上的复合主键 <Pie batdata={this.props.BattingRecord}/>

答案 1 :(得分:0)

创建一个名为&#34; SALES&#34;的表。是否包含产品ID,销售员和买家的外键。拥有salesID的主键。