我们在为新应用程序建模数据时遇到了两难境地。情况有些复杂;所以我写了一个简化的情况,相当于我们的问题:
在 Web 应用程序中,管理员创建产品列表;标题,描述,链接到某些产品类别;等等所以有一个产品实体
在前端,用户订购某些产品;所以有一个 Order 实体,其中包含与其关联的 OrderLine 实体数组;每个 OrderLine 实体都有一个与之关联的 Product。
几天后,订购了多个产品。然而,管理员需要更改产品的价格,甚至删除产品,因为它不再可用。
在数据库中,仍然有与 OrderLines 关联的 Orders,它们链接到 Products。当管理员查看数据库中的订单时会发生什么,这些订单是在数据库中更改产品之前记录的并且与更改的产品相关联?
尽可能避免冗余;在数据库级别上,您将如何对这种情况进行建模?