你好,我有以下MySQL关系,
如您所见,companies表与members表有1:n的关系。然而,这似乎是隐含的,这意味着当我试图将一个成员保存到我的数据库时,它们必须与一个公司相关联,否则就不会插入。
基本上,我们用户注册流程的架构是,您可以是个人,也可以是公司。如何使我的数据库设计反映这一点,所以两个表之间的关系不是必须的。

最佳答案

这不是个好设计。
您应该阅读Party ModelTable Inheritance以查看持久的设计。骨架:

PARTY
id

ORGANIZATION : PARTY
name
doing_business_as

INDIVIDUAL : PARTY
first_name
last_name

PARTY_RELATIONSHIP
from_party_id references party(id)
to_party_id references party(id)
from_date
to_date

ORGANIZATION_CONTACT_RELATIONSHIP : PARTY_RELATIONSHIP

关于mysql - mysql关系,使它们可选?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14442596/

10-12 17:43