Sql 是否可以在主键不等于column4的表上写入约束

Sql 是否可以在主键不等于column4的表上写入约束,sql,sql-server,tsql,Sql,Sql Server,Tsql,我有一个tbl_用户表,如下所示 表1 我必须限制: Id Name ReportingId == 1 Stala 1 2 Coma 2 3 Rita 3 4 Rosy 4 我必须限制这种情况2: Id Name ReportingId == 1 Stala 1 2 Coma 5

我有一个tbl_用户表,如下所示 表1

我必须限制:

Id       Name        ReportingId
==
1        Stala       1
2        Coma        2
3        Rita        3
4        Rosy        4
我必须限制这种情况2:

Id       Name        ReportingId
==
1        Stala       1
2        Coma        5
3        Rita        3
4        Rosy        8
这是否可以通过对表进行约束来实现


如果有任何其他不影响表性能的简单方法?

请在创建表后添加检查约束以防止这些值:

alter table Table1 add CONSTRAINT ck_reportingId check(ReportingId <> Id)
alter table 1添加约束检查报告Id检查(报告Id)

是否可以检查表1上是否存在id约束ALTER TABLE Table1添加约束FK_Table1_ReportingID外键(ReportingID)引用表1(id)。如果要在删除父记录时删除所有子引用,请在此查询末尾添加“ON delete CASCADE”。
alter table Table1 add CONSTRAINT ck_reportingId check(ReportingId <> Id)