问候语,
我将这三个表命名为 - person,employee,customer。 我应该使用以下标准的SQL关系: 1.人持有其他两个表的初步数据。 2.没有员工可以成为客户。
要添加更多内容,我正在使用MySQL进行设计。
我应该使用1-1或1- *来表示person-> employee和person-> customer的关系? 非常感谢您的回复。
谢谢!
答案 0 :(得分:1)
您在Person和其他两个表之间基本上有1-(0或1)关系。可以通过触发器强制实现Customer和Employee互斥的事实。您可以查看Section 3.6.3 of this explanation of relationship types了解更多信息。这是Wikipedia article on exclusive relationships。
答案 1 :(得分:0)
以下是sql-server的“表继承”示例,但也适用于mysql: http://www.sqlteam.com/article/implementing-table-inheritance-in-sql-server
答案 2 :(得分:0)
您的案例看起来像是gen-spec设计模式的一个例子。有关此前的讨论,请点击链接。 This should be simple. But how do I design this?