इसे इस्तेमाल करे:
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 सर्वर प्रबंधन स्टूडियो का उपयोग कर स्रोत कोड को देखने के लिए "ऑब्जेक्ट एक्सप्लोरर" में मिलता है। वहां से आप "मास्टर" डेटाबेस का विस्तार करते हैं, फिर "प्रोग्रामेबिलिटी", फिर "संग्रहीत प्रक्रियाएं", फिर "सिस्टम संग्रहीत प्रक्रियाएं" का विस्तार करते हैं। फिर आप "sys.sp_helpconstraint" ढूंढ सकते हैं और इसे राइट क्लिक करें और "संशोधित करें" चुनें। बस इसके लिए किसी भी बदलाव को नहीं बचाने के लिए सावधान रहें। इसके अलावा, आप किसी भी तालिका पर इस सिस्टम संग्रहीत कार्यविधि का उपयोग करके इसका उपयोग कर सकते हैं EXEC sp_helpconstraint YourTableNameHere
।