我订购的客户ID,订单日期,订单类型等详细信息......
然后该订单包含该订单上的产品列表
我是为订单创建一个表,还是为产品创建另一个表?
如果是,那么两个表之间是否应该有外键?
答案 0 :(得分:1)
您的表格结构应如下所示。在您的product
表格中,通过foriegn密钥在order_id
表格中创建对order
的引用。那么,每个订单都将被关联
使用一个或多个产品,您可以使用JOIN
查询中的SELECT
找到相同内容。
Table: Order(order_id Primary key,customer id, order date, order type)
Table: Products(product_id primary key, order_id foriegn key,col1, col2);
说明:
产品可能无法随时与订单关联,但订单必须与产品相关联(出于原因,我们无法订购空白订单)。
答案 1 :(得分:1)
以下是我的模型:
一对多的外键总是属于"很多"表并参考他们的"一个"表
如果你有多对多的关系,你需要一个JOIN表,它有两个一对多的外键。
答案 2 :(得分:1)
如果产品不属于您的商店/来源,您当前的情况可能有效,您从不同的来源和客户订购产品,以便您可以使用要求详细信息维护订单。 如果产品来自您的来源/商店,那么您必须需要产品和订单