在SQL Server 2014中,我想创建一个外键
ALTER TABLE tblPerson
ADD CONSTRAINT tblPerson_Gender_FK
FOREIGN KEY(Gender) REFERENCES tblGender(ID);
但我总是得到这个错误:
Msg 2714,Level 16,State 5,Line 30 数据库中已经有一个名为“tblPerson_Gender_FK”的对象。
Msg 1750,Level 16,State 0,Line 30 无法创建约束或索引。查看以前的错误。
这是我的桌子
create table tblPerson
(
ID int Primary Key NOT NULL,
Name varchar(max) Not null ,
Email varchar(max) Not null,
Gender int
)
和另一个
create table tblGender
(
ID int not null Primary key,
Gender varchar(max)
)
错误很明显,你有另一个名为tblPerson_Gender_FK
的外键。
您可以更改外键名称;
ALTER TABLE tblPerson
ADD CONSTRAINT tblPerson_Gender_2_FK FOREIGN KEY(Gender) REFERENCES tblGender(ID);
或者您可以删除现有的外键。但我不推荐它,因为删除现有的外键可能会导致相关表上的意外数据问题。