SQL - 在另一个表中使用外键添加约束

时间:2017-07-05 08:46:12

标签: sql sql-server foreign-keys constraints

我尝试添加约束,但我无法做我想做的事情:)。

所以在我的情况下,我有这3个表:

ALTER TABLE [dbo].[Project]  WITH CHECK ADD  CONSTRAINT [FK_Project_UserId] FOREIGN KEY([UserId])
REFERENCES [dbo].[User] ([Id])

表KindOfProject将列“Id”和“Language”作为主键

我已经添加了第一个约束来将表项链接到表User,如下所示:

ALTER TABLE [dbo].[Project]  WITH CHECK ADD  CONSTRAINT [FK_Project_KindOfProjectId] FOREIGN KEY([KindOfProjectId],[Language]) 
REFERENCES [dbo].[KindOfProject] ([Id],[Language])

现在,我想要做的是添加一个约束来将表Project中的“KindOfProjectId”列链接到表KindOfProject中的列“Id”:

ALTER TABLE [dbo].[Project]  WITH CHECK ADD  CONSTRAINT [FK_Project_KindOfProjectId] FOREIGN KEY([KindOfProjectId],[User].[Language]) 
    REFERENCES [dbo].[KindOfProject] ([Id],[Language])

但它不起作用,因为表Project中没有列语言。但是我可以通过表User的链接来获取它,因为表User有一个列语言。

所以我尝试过这样的事情:

scanf

但没有任何作用。

你对此有所了解吗? :d

感谢您的帮助!

0 个答案:

没有答案