我为我的客户提出了以下架构。这里有什么特别是订单行项目。我应该使用继承吗?我很确定这个网站只允许您订购课程、课程和礼品卡,仅此而已
对于任何反馈,我们都表示感谢

我为我的客户提出了以下架构。这里有什么特别是订单行项目。我应该使用继承吗?我很确定这个网站只允许您订购课程、课程和礼品卡,仅此而已
对于任何反馈,我们都表示感谢

只是我对设计的想法:
您有可能的购买对象的 和 表,并Courses包含Lessons每个表的 ID。但如果客户购买 a和 a ,它们应该在订单中显示为 2 行。另外,如果您的客户想要交易更多物品,您会怎么做?GiftCardsOrderLinesLessonGiftCard
因此,我认为重新设计这部分可能会更好,如下所示:
OrderLines重命名为OrderItems;ItemType3 行的表格:Courses, Lessons, GiftCards;Items带有(ItemId, ItemType, Title, Price, LanguageCode, SortOrder, etc.)字段的表。这样,不仅可以添加评论,还可Lessons以为所有可能的项目添加评论。
您必须想出保留详细信息字段的首选方式Items。现在Courses并Lessons共享很多字段,因此将它们全部移动到新Items表中可能是合理的,因为这些字段似乎也适用于GiftCards。如果你有一些特定的细节,比如 for GiftCards,你可以添加特定的表,比如GiftCardItemswithItems.id和一组不与其他Item类型共享的特殊字段。
一个小提示:我会分成Users几个表,因为我想这个表将包含客户和支持的东西。这意味着该表可能会变大(取决于预期的客户数量)。当表的行数增加时,在单个表中维护这么多字段可能会出现问题。
我同意马特的观点——没有要求就很难说出任何事情。
如果不了解客户的要求,真的很难说。一切看起来都不错,但如果没有客户的需求文档,我真的无法判断它是否包含客户想要的东西。