如果我创建下表
create table test(
id1 int,
id2 int,
id3 int constraint CK1 check (id3 > 2),
constraint CK2 check (id1 > id2),
)
我可以通过查询select * from sys.check_constraints
找到CK1的依赖项。 Parent_column_id 将返回正确答案 3。但是,CK2 则不同,父列 id 返回 0。是否有另一个 View 可以告诉我 CK2 的依赖列?
谢谢
最佳答案
您可以使用INFORMATION_SCHEMA架构。
select cu.*
from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE cu
inner join INFORMATION_SCHEMA.CHECK_CONSTRAINTS c on c.CONSTRAINT_NAME=cu.CONSTRAINT_NAME
where c.CONSTRAINT_NAME='CK2'
关于sql-server - 如何检索 SQL Server 检查约束依赖列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19031780/