链接ID到表SQL中的其他ID

时间:2017-02-09 09:20:49

标签: mysql sql sql-server

我必须将'Woonplaats'添加到表'Leden'中的所有人 这是我的代码以及我想要做的,我想将表'Leden'中的ID'ID'链接到表'Woonplaats'中的ID'WoonplaatsID'

这是我的SQL代码

-- Gegevens in tabel Leden toevoegen
INSERT INTO Leden (ID, Voornaam, Achternaam, Leeftijd, Moeder, Vader)
VALUES (1, 'Sandra','Rengeling', 49, 3, 4),
(2, 'Erik','Rengeling', 50, 9, 10),
(3, 'Claar','Aarts', 78, 0, 0),
(4, 'Piet','Aarts', 80, 0, 0),
(5, 'Petra','van de Werken', 45, 3, 4),
(6, 'Patrick','van de Werken', 47, 11, 12),
(7, 'Jari','Rengeling', 19, 1, 2),
(8, 'Romy','Rengeling', 17, 1, 2),
(9, 'Inge','Rengeling', 82, 0, 0),
(10, 'Henk','Rengeling', 85, 0, 0),
(11, 'Jan','van de Werken', 78, 0, 0),
(12, 'Monique','van de Werken', 75, 0, 0)
-- TRUNCATE TABLE Leden

-- Gegevens in tabel Woonplaats toevoegen
INSERT INTO Woonplaats (WoonplaatsID, Woonplaats)
VALUES (101, 'Ammerzoden'),
(102, 'Zaltbommel'),
(103, 'Hedel')
-- TRUNCATE Table Woonplaats

-- Relatie maken
ALTER TABLE Leden
    ADD CONSTRAINT [FK_Leden_Woonplaats] 
    FOREIGN KEY (CompanyID)
    REFERENCES Company (ID)

2 个答案:

答案 0 :(得分:0)

假设您正在尝试在两个表之间创建关系:

首先,确认Woonplaats(WoonplaatsID)上存在现有主键。如果没有,请运行:

ALTER TABLE Woonplaats ADD PRIMARY KEY (WoonplaatsID);

注意:子表不能包含父表中不存在的任何记录。

可以通过以下方式建立外键关系:

ALTER TABLE Leden
ADD CONSTRAINT FK_Leden_Woonplaats 
FOREIGN KEY (ID)
REFERENCES Woonplaats (WoonplaatsID);

答案 1 :(得分:0)

Leden表中没有公司ID 列,您的查询中也没有名为公司的表格。如果您真的想要关联Leden(ID)和Woonplaats (WoonplaatsID)然后执行以下命令。

ALTER TABLE Leden ADD CONSTRAINT FK_Leden_Woonplaats FOREIGN KEY (ID) REFERENCES Woonplaats (WoonplaatsID);