检查对同一表中唯一列的约束引用

时间:2019-01-15 08:39:02

标签: sql sql-server constraints

我有一张桌子:

ID     Name       ParentID
==     ====       ========
1       A          Null
2       B           1
3       C           2

所以A是B的父级,而B是C的父级。

我需要为column(ParentID)创建一个约束,该约束不接受数字,该约束在ID(ID)中不存在。 我会怎么做?

2 个答案:

答案 0 :(得分:2)

您需要添加外键。

ALTER TABLE table1 
  ADD CONSTRAINT fk_parent_id 
  FOREIGN KEY (parent_id) REFERENCES table1(id);

答案 1 :(得分:1)

您还可以使用SSMS设计创建外键,如下所示。展开表格,然后右键单击“键-新的外键”

enter image description here

现在单击关系的浏览按钮,并指定主键和外键表的列名,如下所示。

enter image description here

这是一种方法,您可以使用查询或设计来选择首选方法,以在Sql Server中的表之间创建外键关系。