我正在尝试将SQL Server中的外键添加到现有表中,但我收到错误。有人可以帮帮我吗?
注意:表1和表1中都有objid
。表2
ALTER TABLE table1
ADD CONSTRAINT FK_41_PRICE_INST2PRICE_QTY
FOREIGN KEY (Table1 PRICE_INST2PRICE_QTY) REFERENCES table2(objid);
错误:
FK_40_PRICE_INST2PRICE_QTY。冲突发生在数据库" test",table" dbo.table2",column' objid'。
答案 0 :(得分:0)
语法应该是这样的:
ALTER TABLE table1
ADD CONSTRAINT FK_41_PRICE_INST2PRICE_QTY
FOREIGN KEY (PRICE_INST2PRICE_QTY) REFERENCES table2(objid);
您无需限定列名称。
答案 1 :(得分:0)
除了语法错误之外,我认为objid
列中的某些值并不存在于PRICE_INST2PRICE_QTY
表中。您必须检查两列之间的值。这就是为什么要创建外键来防止这种情况。
答案 2 :(得分:0)
快速检查你的专栏'objid'并且不要写
FOREIGN KEY (Table1 PRICE_INST2PRICE_QTY) REFERENCES table2(objid);
应该更像是:
FOREIGN KEY (PRICE_INST2PRICE_QTY) REFERENCES table2(objid);
没有table1,因为你在table1中工作。