【发布时间】:2021-02-03 21:43:37
【问题描述】:
我创建了这些表:
create table Angajati
(
ID_Angajat int identity(1,1) primary key not null,
Nume varchar(15) not null,
Prenume varchar(30) not null,
FunctieAngajat varchar(100) not null,
NrTelefon int not null
);
create table PersonalLocatii
(
ID_PersonalLocatii int identity(1,1) primary key not null,
CodLocatie int not null,
foreign key (CodLocatie) references Locatii(CodLocatie),
AdresaLocatie nvarchar(max) not null,
FunctieAngajat varchar(100) not null,
ID_Angajat int not null
);
go
我想在PersonalLocatii 表中的ID_Angajat 列上放置一个外键,我使用以下语法:
alter table PersonalLocatii
add constraint FK_ID_Angajat
foreign key (ID_Angajat) references Angajati(ID_Angajat);
修改列后,不让我输入第二个表的信息。第一个表和第二个表之间的关系是一对多的。
这是错误:
ALTER TABLE 语句与 FOREIGN KEY 约束“FK_ID_Angajat”冲突。冲突发生在数据库“Vegas”、表“dbo.Angajati”、列“ID_Angajat”中。
请帮帮我!
【问题讨论】:
-
这意味着您的
ID_Angajat列中已经有与Angajati表中的记录不匹配的值。您必须先更正数据。 -
听起来该表包含一些违反您尝试添加的约束的数据,即
ID_Angajat中的值存在于第二个表中,但不是第一个。
标签: sql-server database tsql