我需要创建一个具有以下简单要求的MySql关系数据库:
客户可以拥有许多自己是客户的SUBSCRIBER
客户可以拥有许多本身就是客户的联系
看起来我需要两个XREF表,但它们是xreferencing同一个表(CLIENT)!
到目前为止,我似乎能够设计出来的唯一方法如下:
这似乎不切实际,因为CONTACT和SUBSCRIBER都只引用了一个客户端。
我觉得我在这里遗漏了一些明显的东西......
*编辑*
根据下面的第一条评论,我推导出以下简化表...
答案 0 :(得分:0)
您可以定义clients
有多个subscribers
和contacts
-
表: clients
+----+-------------+----------------------+
| id | name | email |
+----+-------------+----------------------+
| 1 | A | email@example.com |
+----+-------------+----------------------+
注意:
id
是主键
表: subscribers
+----+-------------+----------------------+
| id | client_id | status |
+----+-------------+----------------------+
| 1 | 1 | Y |
+----+-------------+----------------------+
| 2 | 3 | Y |
+----+-------------+----------------------+
注意:
id
是主键,client_id
是clients
表的外键
表: contacts
+----+-------------+----------------------+
| id | client_id | status |
+----+-------------+----------------------+
| 1 | 1 | Y |
+----+-------------+----------------------+
| 2 | 3 | Y |
+----+-------------+----------------------+
注意:
id
是主键,client_id
是clients
表的外键