【发布时间】:2012-12-20 14:23:29
【问题描述】:
我目前正在从事一项工作,在尝试关联两个表时遇到问题,其中一个表由于泛化而成为子类。
表 A 有一个主键 StaffID,我想将其与通用表(表 B)中的外键相关联。表 B 的超类(表 C)具有 staffID 字段,因此泛化应该将其从表 C 带到表 B。
但是,当使用图表视图设置 FK 关系时,当我查看 下拉字段,我只能看到表 B 中的属性,看不到任何超类(表 C)属性,因此看不到人员 ID。
为了提供更多的上下文,有两种类型的人员,一种可以在泛化的所有表中创建数据,因此通过人员ID直接链接到超类,但是另一种类型的人员只能添加数据到子类之一。
Super Class C
(staffID)
Sub Class D Sub Class B(FK) ----------- table A (PK)
(staffID)
提前致谢
【问题讨论】:
-
不能与不在表中的列建立 FK 关系。
标签: database sql-server-2008 tsql class-table-inheritance