bunu dene:
SELECT
*
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_NAME ='FK_ChannelPlayerSkins_Channels'
-- DÜZENLE --
Bu soruyu ilk olarak yanıtladığımda, "Yabancı Anahtar" diye düşünüyordum çünkü asıl soru "FK_ChannelPlayerSkins_Channels" bulmayı sordu. O zamandan beri birçok kişi diğer "kısıtlamaları" bulma konusunda yorumlarda bulundu:
--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'
İşte alternatif bir yöntem
--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'
Daha fazla kısıtlama bilgisine ihtiyacınız varsa, master.sys.sp_helpconstraint
belirli bilgileri nasıl alacağınızı görmek için sistem saklı yordamının içine bakın. SQL Server Management Studio'yu kullanarak kaynak kodunu görüntülemek için "Nesne Gezgini" ne girin. Buradan "Ana" veritabanını, ardından "Programlanabilirlik" i, ardından "Saklı Yordamlar" ı ve ardından "Sistem Saklı Yordamları" nı genişletin. Daha sonra "sys.sp_helpconstraint" dosyasını bulup sağ tıklayıp "değiştir" i seçebilirsiniz. Sadece herhangi bir değişiklik kaydetmemeye dikkat edin. Ayrıca, bu sistem saklı yordamını herhangi bir tablodaki gibi kullanarak kullanabilirsiniz EXEC sp_helpconstraint YourTableNameHere
.