[英]Reference one foreign key to multiple primary keys in SQL Server 2014
我在这里推荐的设计是表/子表解决方案。 这意味着,引入第4个表, Test
。 Test
表只是用作将所有不同测试类型链接在一起的表。 如果您熟悉面向对象编程,请将其视为基本类型。 基本上,你的ProcessID
指向Test
,然后指向一个特定的测试类型(SportsTest,MedicalTest,WhateverTest)。 如果您愿意,还可以在Test
表中包含一个Type
,以帮助您了解它是哪种类型的测试。 这里有一个关键的问题:在MedicalTest
和SportsTest
表中,主键(比如MedicalTestID
)也是一个指向Test
TestID
的外键。 通过这种方式,您可以在GeneralNeeds
使用单个列,因为引用的是单个表类型Test
。 由于Test
和相应的MedicalTest
或SportsTest
具有相同的主键,因此您可以轻松地执行查询所需的连接。
简单的例子:假设您有一个ID为1的MedicalTest
(让我们忘记一分钟的GUID以使其更容易阅读)然后您还在Test
有一个ID为1的记录。然后ProcessID
为1真正指向在Test
记录,然后您可以加入到MedicalTest
记录。
如果您仍然感到困惑,请告诉我,我会尝试添加更多细节,但希望这会让您朝着有效的方向前进。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.