我在哪里可以找到SQL Server中的所有DISABLED唯一键?
问题描述:
我需要运行例程以在SQL Server中查找所有禁用的唯一键,或者至少知道英国是否存在并被禁用。我在哪里可以找到SQL Server中的所有DISABLED唯一键?
IF (OBJECT_ID('UK_NAME'UQ') IS NOT NULL)
BEGIN
PRINT('EXISTS')
END
ELSE
BEGIN
PRINT('DOESNT EXISTS')
END
如果英国被禁用,系统无法找到英国,此代码不起作用。有没有一张桌子,我可以找到所有英国,即使它被禁用?
答
也许你可以使用:
Select * From sys.indexes
答
你应该寻找禁用唯一索引:
select object_name(object_id) as tbl_name,
name,
index_id
from sys.indexes
where is_disabled = 1 and is_unique = 1;
谢谢,它的工作! =) –