创建自引用表

时间:2015-03-23 19:12:29

标签: sql-server

我有一个分层表 - 它适合自引用样式,就像我找到的这个例子一样。

CREATE TABLE OurStuff
(
     StuffID INT NOT NULL PRIMARY KEY,
     StuffSubID INT NULL,
     StuffName VARCHAR(10) NOT NULL,

     CONSTRAINT fk_StuffID FOREIGN KEY (StuffSubID)
        REFERENCES OurStuff(StuffID)
)

我有一个类似的表 - 但是当我尝试使用Visual Studio Server Explorer进行复制时,我收到一条错误消息:

  

“表'abc'中的列与现有主键或   唯一约束“

我可以理解为什么,但我不知道为什么上面引用的例子会起作用而我的不会。

更新:此处为示例“How do I create a self-referencing foreign key?”

中页面的链接

更新:

enter image description here

1 个答案:

答案 0 :(得分:1)

我认为你的关系已经逆转了。 ProductTypeID列应位于“主键表”下方的左侧,ProductTypeParentID列应位于“外键表”下方的右侧。