2

我们有桌子比萨饼和订单

逻辑模型

SQL 数据建模器生成如下关系模型:

关系模型

我们忘记了,客户可以购买 2 个或更多相同的比萨饼。我们发现我们可以将列片段添加到表 Pizza_orders,或者我们可以为表 Pizza_Orders (Pizza_Orders_Id) 创建特殊的主键。哪种解决方案更好?还是有其他更好的解决方案?

4

2 回答 2

4

修改您的Pizza_Orders表格以包含数量字段:

Pizza_Orders

Orders_Order_id
Pizza_Pizza_id
Pizza_Pizza_quantity

如果一次知道整个订单,那么插入这个表会很容易。换句话说,如果所有比萨饼的数量和类型通常是已知的,那么插入应该不是问题。这也解决了一个订单有不止一种类型的同一种披萨的问题。

请注意,这个新Pizza_Orders表中的主键仍然只是订单号和披萨号的组合,不涉及数量。原因是订单号和比萨饼类型最多只能出现在一条记录中,与数量无关。

于 2015-12-28T12:28:47.260 回答
3

您应该将列数量添加到表 Pizza_Orders。我想你错过了披萨的大小。订购时没有选择尺寸的选项,尽管这对于下订单很重要。

于 2015-12-28T12:33:36.030 回答