ER图数据库设计
Database design with ER diagrams
我开始在一家初创公司工作了一个星期,我被分配到数据库方面。我以前没有使用数据库的经验,我正在尽可能多地研究它们。我们使用 Airtable 作为我们的关系数据库。
一周后,经过一些研究,我意识到他们认为他们正在使用 Airtable 作为数据库,但它基本上只是一个电子表格,因为它不遵守任何关系数据库规则(没有主键,没有正确链接的数据重复记录等等)。
但是,在尝试为我们的真实数据库绘制 ER 图时,我被卡住了,因为 CARDINALITY 让我感到困惑。
- 我们应该有一个吸引客户的营销团队,并跟踪每个营销人员吸引了多少客户。
- 将为每位客户提供三种服务:分享他的书籍、租借和阅读书籍或索取书籍以防我们的数据库中没有。
这只是其中的一部分,但理解这一小部分可能会帮助我扩展这张图。
这就是我目前想到的 ER Diagram。
请考虑以下事项:
- 您的营销团队符合客户的模式,他们本质上是一个 'Person' 实体 - 而您在不必要地复制信息。
- 每个“人”都可以有角色,例如客户或营销团队。 Entity和Role之间的关系是1对多。因此,营销团队成员自己成为客户是可能的。
2B) 这将建议人员和角色的映射 table,例如Person_Roles.
- 我建议您有一项服务 table,其中列出了您的服务。
- 您可能会发现您需要一个 table 类似 Person_Services 的东西,它列出了一个人请求的服务 - 带有时间戳详细信息。因此,一个人可以请求一项或多项服务 - 您可以跟踪它们。此 table 将有一个字段,比如 MarketingTeam_PersonId,它将列出协助该人处理其服务请求的内部人员的人员 ID。
随着您更好地了解现实以及在拼图时未传达给您的内容,此模型将发生变形和变化。
祝你好运。
我开始在一家初创公司工作了一个星期,我被分配到数据库方面。我以前没有使用数据库的经验,我正在尽可能多地研究它们。我们使用 Airtable 作为我们的关系数据库。 一周后,经过一些研究,我意识到他们认为他们正在使用 Airtable 作为数据库,但它基本上只是一个电子表格,因为它不遵守任何关系数据库规则(没有主键,没有正确链接的数据重复记录等等)。 但是,在尝试为我们的真实数据库绘制 ER 图时,我被卡住了,因为 CARDINALITY 让我感到困惑。
- 我们应该有一个吸引客户的营销团队,并跟踪每个营销人员吸引了多少客户。
- 将为每位客户提供三种服务:分享他的书籍、租借和阅读书籍或索取书籍以防我们的数据库中没有。
这只是其中的一部分,但理解这一小部分可能会帮助我扩展这张图。
这就是我目前想到的 ER Diagram。
请考虑以下事项:
- 您的营销团队符合客户的模式,他们本质上是一个 'Person' 实体 - 而您在不必要地复制信息。
- 每个“人”都可以有角色,例如客户或营销团队。 Entity和Role之间的关系是1对多。因此,营销团队成员自己成为客户是可能的。 2B) 这将建议人员和角色的映射 table,例如Person_Roles.
- 我建议您有一项服务 table,其中列出了您的服务。
- 您可能会发现您需要一个 table 类似 Person_Services 的东西,它列出了一个人请求的服务 - 带有时间戳详细信息。因此,一个人可以请求一项或多项服务 - 您可以跟踪它们。此 table 将有一个字段,比如 MarketingTeam_PersonId,它将列出协助该人处理其服务请求的内部人员的人员 ID。
随着您更好地了解现实以及在拼图时未传达给您的内容,此模型将发生变形和变化。
祝你好运。