我有两个表,我希望HEDE2列为HEDE表的FOREIGN KEY REFERENCES。为了创建第二个表,它将不允许,因为它有警告:
在列级FOREIGN KEY约束中指定了多个键,表'HEDE2'。
但是当我尝试ALTER TABLE HEDE2
FOREIGN KEY时,它允许我这样做。有谁知道为什么会这样。这是一个错误吗?
CREATE TABLE cascde.HEDE
(
HedeID INT,
HedeID2 INT,
HedeID3 INT
CONSTRAINT PK_HEDE
PRIMARY KEY (HedeID, HedeID2, HedeID3)
)
GO
CREATE TABLE HEDE2
(
Hede2ID INT PRIMARY KEY IDENTITY(1,1) ,
HedeID INT,
HedeID2 INT,
HedeID3 INT
CONSTRAINT FK_HedeID
FOREIGN KEY (HedeID, Hede2ID, HedeID3)
REFERENCES cascde.HEDE (HedeID, HedeID2, HedeID3)
ON UPDATE NO ACTION
ON DELETE NO ACTION
)
为外键更改表HEDE 2。这允许我这样做:
ALTER TABLE cascde.HEDE2
ADD CONSTRAINT FK_HEDE
FOREIGN KEY(HedeID, HedeID2, HedeID3)
REFERENCES cascde.HEDE (HedeID, HedeID2, HedeID3)
ON UPDATE NO ACTION
ON DELETE NO ACTION
GO
答案 0 :(得分:0)
,
版本中的HedeID3 INT
后面缺少逗号(CREATE TABLE
)。