Mysql 什么样的SQL关系适合这里?

Mysql 什么样的SQL关系适合这里?,mysql,sql,database,database-design,Mysql,Sql,Database,Database Design,问候, 我有三个表,分别是person、employee和customer。 对于以下条件,我应该使用什么样的SQL关系: 1.Person持有其他两个表的初步数据。 2.任何员工都不能是客户 另外,我正在用MySQL设计这个 我应该使用1-1还是1-*来处理个人->员工和个人->客户的关系? 非常感谢你的答复 谢谢 Person和其他两个表之间基本上是1-(0或1)关系。客户和员工相互排斥的事实可以通过触发器强制执行。你可以查看更多信息。以下是。以下是sql server的“表继承”示例,但m

问候,

我有三个表,分别是person、employee和customer。 对于以下条件,我应该使用什么样的SQL关系: 1.Person持有其他两个表的初步数据。 2.任何员工都不能是客户

另外,我正在用MySQL设计这个

我应该使用1-1还是1-*来处理个人->员工和个人->客户的关系? 非常感谢你的答复

谢谢

Person和其他两个表之间基本上是1-(0或1)关系。客户和员工相互排斥的事实可以通过触发器强制执行。你可以查看更多信息。以下是。

以下是sql server的“表继承”示例,但mysql也应如此:

您的案例看起来像gen spec设计模式的一个示例。有关此问题的先前讨论,请访问链接

看起来您需要1-*的等效值,因为您不能使用1-1,因为从person到另一个表的链接将是customer表或employee表。employee不能是customer?嗯,这是一种绕过员工折扣的方法@约翰:如果我要使用1-*,PersonFK上的副本将存在于不同的CustomerPK或EmployeePK中。基本上,您将有一个从Customer到person的受约束外键,以及一个从employee到person的受约束外键。。。因此,customer表必须有一个现有的person记录,employee表必须有一个现有的person记录,但是。。。人员记录不必有现有的客户或员工记录。。。您无法设置从person到其他2个表的外键,因为外键需要从1个表到1个表……您提到的mySQL约束是什么?我修改了答案,将约束更改为触发器,这对于这种类型(完整性约束)更为正确@ondedaywhen:我不能说这是对表格的限制。但有一个条件与标准相符,在表继承中,它是否解决了我提出的第二个标准?