数据库中的关系

时间:2013-12-05 18:51:58

标签: database relational-database

在制作一个将3个表与3个关系连接起来的关系时是否有任何问题?

就我而言,我有销售,销售细节和产品。 我相关的产品和销售细节因为我可以详细输入多个产品。另一方面,我关注产品销售,因为我需要一些属于销售的产品。 我做这种关系是错的吗?

我把我的桌子重新编辑:

销售:sales_id,日期

Sales_Details:sales_id,prodSale_id

产品:product_id,product_info,cost

Products_for_Sale:prodSale_id,product_id,price

enter image description here

enter image description here

考虑以下情况:

  1. 我有一张表格,其中Products_for_Sale产品属于销售只出现一次。此表是必需的,因为我需要根据需要手动更改产品的销售价格,而无需更改整体产品表。 (请注意,我手动更改了产品1,2,3和4 Products_for_Sale)。
  2. 请注意,产品会重复销售,因为这是业务规则的必要条件(产品重复我有更多字段需要重复产品)。
  3. 出于这个原因,我需要一个帮助器,我只将这些产品放在一次(Products_for_Sale)表。
  4. 但我考虑在Products_for_Sale列中放置一个sales_id,以了解哪些属于每个产品销售。
  5. 我现在正在进行建模吗?

1 个答案:

答案 0 :(得分:1)

以下列方式拥有3个表会更好。

1)销售(sales_id,date,..)

2)产品(product_id,product_info,...)

第3)sales_products(sales_id,PRODUCT_ID)

这是normalized,是许多人关系的最佳方法。查看here了解更多信息