【发布时间】:2020-04-02 02:58:07
【问题描述】:
我试图在一个帐户可以拥有的两个角色之间建立最佳关系,即“用户”和“公司”。我在这些之间做出决定:
如果有人要注册,他/她需要选择要使用的角色,然后填写其余字段。例如,如果我注册为用户,则“companyId”字段将为空,我不希望这样......
这里也一样,如果我注册为公司,我需要填写必填字段,仅此而已,但“userId”字段为空,以防我收到任何反馈或放置我的项目。
【问题讨论】:
-
Firebase 数据库(包括实时数据库和 Firestore - 您还没有说您使用的是哪个)本质上是 NoSQL 和非关系型的。您不能强制使用具有关系的模式。您可以让任何字段保持最新状态,并且可以自行设计数据,以便为您打算执行的查询提供服务。
-
嘿,Doug,我想在这个带有 firestore 的项目中使用 firebase,但我想将其保留为关系数据库(对我来说更舒服)
-
那么忽略数据库组件,我们只需要讨论概念关系。多解释一下流程,因为在不同的场景下两者都一样有效和无效,那么属于公司的用户呢?如果您无法从另一个角度回顾这一点,请从 1:many 的角度考虑,考虑您期望使用的查询类型和数据,这些关系有助于管理您的结构。
标签: database entity-relationship entity-relationship-model