попробуй это:
SELECT
*
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_NAME ='FK_ChannelPlayerSkins_Channels'
-- РЕДАКТИРОВАТЬ --
Когда я первоначально ответил на этот вопрос, я думал «Внешний ключ», потому что первоначальный вопрос задавался о поиске «FK_ChannelPlayerSkins_Channels». С тех пор многие люди прокомментировали поиск других «ограничений», вот некоторые другие запросы для этого:
--Returns one row for each CHECK, UNIQUE, PRIMARY KEY, and/or FOREIGN KEY
SELECT *
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE CONSTRAINT_NAME='XYZ'
--Returns one row for each FOREIGN KEY constrain
SELECT *
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_NAME='XYZ'
--Returns one row for each CHECK constraint
SELECT *
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS
WHERE CONSTRAINT_NAME='XYZ'
вот альтернативный метод
--Returns 1 row for each CHECK, UNIQUE, PRIMARY KEY, FOREIGN KEY, and/or DEFAULT
SELECT
OBJECT_NAME(OBJECT_ID) AS NameofConstraint
,SCHEMA_NAME(schema_id) AS SchemaName
,OBJECT_NAME(parent_object_id) AS TableName
,type_desc AS ConstraintType
FROM sys.objects
WHERE type_desc LIKE '%CONSTRAINT'
AND OBJECT_NAME(OBJECT_ID)='XYZ'
Если вам нужна дополнительная информация об ограничениях, загляните в системную хранимую процедуру, master.sys.sp_helpconstraint
чтобы узнать, как получить определенную информацию. Для просмотра исходного кода с помощью SQL Server Management Studio перейдите в «Обозреватель объектов». Оттуда вы расширяете базу данных «Master», затем «Programmability», затем «Stored Programs», затем «System Stored Programs». Затем вы можете найти «sys.sp_helpconstraint» и щелкнуть по нему правой кнопкой мыши и выбрать «изменить». Просто будьте осторожны, чтобы не сохранить какие-либо изменения в нем. Кроме того, вы можете просто использовать эту системную хранимую процедуру для любой таблицы, используя ее как EXEC sp_helpconstraint YourTableNameHere
.