2014-12-01 76 views
1

我想添加一个外键到现有的表,这是我到目前为止有:添加关系

ALTER TABLE  INVOICE_ITEM 
ADD CONSTRAINT Invoice_ItemFK FOREIGN KEY (ProdID); 

我得到这个错误:

Msg 102, Level 15, State 1, Line 7 Incorrect syntax near ')'.

任何线索如何规避这个?

+0

请编辑您的原始问题 - 包括PROD和INVOICE_ITEM表的完整定义。 – AHiggins 2014-12-01 18:23:10

回答

0

您需要指定REFERENCES子句。我已经在这里参考了 - 但你明白了。实际问题是外键的名称。它应该以FK_开头。

ALTER TABLE INVOICE_ITEM 
ADD CONSTRAINT FK_Invoice_Item 
FOREIGN KEY (ProdID) 
REFERENCES Prod(ProdID); 
+0

感谢您的帮助,我想你的建议,并收到其他错误,这里是与错误沿着代码: – 2014-12-01 18:17:29

+0

ALTER TABLE INVOICE_ITEM ADD CONSTRAINT Invoice_ItemFK 外键(的ProdID) 参考PROD(的ProdID) – 2014-12-01 18:18:32

+0

消息207,级别16,状态1,行1 列名'Item'无效。 – 2014-12-01 18:19:00

0

您需要一个REFERENCES子句来列出您希望外键指向哪个表。例如,假设ProdID是PRODUCTS表的主键:

ALTER TABLE INVOICE_ITEM 
ADD CONSTRAINT Invoice_ItemFK 
FOREIGN KEY (ProdID) 
REFERENCES PRODUCTS (ProdID);