带有ER图的数据库设计

问题描述

我从现在开始在一家新兴公司工作了一个星期,并且已被分配给数据库方面。我以前没有数据库方面的经验,因此我正在尽可能多地研究它们。我们正在使用Airtable作为我们的关系数据库。 经过一周的研究,我意识到他们认为他们将Airtable用作数据库,但基本上只是一个电子表格,因为它不遵守任何关系数据库规则(没有主键,没有正确链接的数据重复记录等)。 但是,当试图为我们的真实数据库建立一个ER图时,我陷入了困境,因为CARDINALITY使我感到困惑。

  • 我们应该有一个吸引客户的营销团队,并跟踪每个营销人员吸引了多少客户。
  • 将为每位客户提供三项服务:共享他的书,出租和阅读一本书,或者在我们的数据库中没有该书的情况下索取一本书。

这只是全部内容的一部分,但了解这一小部分内容可能会帮助我发展此图。

这是我目前想出的ER Diagram

解决方法

请考虑以下内容:

  1. 您的营销团队适合客户的需求,他们本质上是一个“人”实体-您不必要地复制了信息。
  2. 每个“人员”都可以扮演例如客户或营销团队。实体和角色之间的关系是一对多。因此,营销团队成员有可能自己成为客户。 2B)这将建议人员和角色的映射表,例如Person_Roles。
  3. 我建议您有一个服务表,其中列出了您的服务。
  4. 您可能会发现需要一个类似于Person_Services的表,该表列出了一个人请求的服务-带有时间戳的详细信息。因此,一个人可以请求一项或多项服务-您可以跟踪它们。该表将具有一个称为MarketingTeam_PersonId的字段,该字段将列出协助该人员提供服务的内部人员的人员ID。

当您更好地理解现实以及将难题拼凑起来时没有传达给您的信息时,该模型将发生变化和变化。

祝你好运。