小编lau*_*kok的帖子

在 Person 和 User 之间实现一对一 (1:1) 的关系

场景描述

我将此person表作为超级父级(或超类型),

id
firstname
lastname
email
telephone
...
...
Run Code Online (Sandbox Code Playgroud)

user表作为孩子(或子类型)

id
person_id (FK)
password
username
screenname
...
... 
Run Code Online (Sandbox Code Playgroud)

它们必须是一对一 ( 1:1 ) 的关系,因为用户不能重复两次,因此给定人员行中的特定电子邮件值不能重复两次。

然后我有这张message表,它存储来自任何人的消息

id
firstname
lastname
email
telephone
subject
content
...
...
Run Code Online (Sandbox Code Playgroud)

但可以看到的是firstnamelastnameemailtelephone复制message表。

所以,我想把它参考person下面的表格,

id
person_id
subject
content
...
Run Code Online (Sandbox Code Playgroud)

但随后似乎并不正确,因为一个具有相同的电子邮件名称等可以发送邮件给我很多次他们想要的,所以细节他/提供可重复她。

问题

  • 那么,我应该message …

mysql database-design entity-framework mysql-5.5 subtypes

5
推荐指数
1
解决办法
673
查看次数