客户需要支付活动本身的费用以及作为活动一部分使用的任何“额外”项目的费用。
所以我有客户实体(由客户 ID 标识)和一个项目实体(由项目 ID 标识)。这些中的每一个都有一个成本属性来确定每个项目/活动的成本。但是我如何为这个客户的购买建模呢?例如,客户可能为一项活动付费并为该活动购买一些物品。
我可以添加一个名为 billingInfo 的新实体吗?或者根本不应该有一个新实体?
客户需要支付活动本身的费用以及作为活动一部分使用的任何“额外”项目的费用。
所以我有客户实体(由客户 ID 标识)和一个项目实体(由项目 ID 标识)。这些中的每一个都有一个成本属性来确定每个项目/活动的成本。但是我如何为这个客户的购买建模呢?例如,客户可能为一项活动付费并为该活动购买一些物品。
我可以添加一个名为 billingInfo 的新实体吗?或者根本不应该有一个新实体?
将“账单”本身视为具有关联实体(活动和项目)的实体。像这样的东西:
客户、项目和活动都应该是单独的实体,并且您应该为销售(账单)和销售行项目(账单的活动和项目的一部分)包括一个单独的实体。这样,您可以一次定义项目和活动,并在单个销售实体记录中包含多个(或没有)项目和活动。下面的例子。
设置:
测试数据:
询问:
结果: