2010-04-28 9 views
5

SQL सर्वर में किसी तालिका या रिश्ते के साथ संबंध के साथ सभी तालिकाओं की एक सूची वापस करने का आदेश है?किसी दिए गए तालिका से रिश्ते के साथ सभी तालिकाओं की सूची या

संपादित करें: अपने तालिका नाम TableX है कहो

SELECT 
    name, OBJECT_NAME(parent_object_id) 'Table' 
FROM 
    sys.foreign_keys 
WHERE 
    referenced_object_id = OBJECT_ID('Your-referenced-table-name-here') 
+2

एसक्यूएल सर्वर का कौन सा संस्करण कृपया? – gbn

उत्तर

7

SQL सर्वर 2005 और ऊपर के लिए, की तरह कुछ का उपयोग करें। यदि आप सभी विदेशी कुंजी रिश्तों में जानना चाहते हैं तो आप ऐसा कर सकता है (TableX के स्तंभों अन्य तालिकाओं और स्तंभों तालिका में संदर्भित अन्य तालिकाओं के में संदर्भित):

select name 'ForeignKeyName', 
    OBJECT_NAME(referenced_object_id) 'RefrencedTable', 
    OBJECT_NAME(parent_object_id) 'ParentTable' 
from sys.foreign_keys 
where referenced_object_id = OBJECT_ID('TableX') or 
    parent_object_id = OBJECT_ID('TableX') 
2
-- To find all the foreign keys established to a table! 
-- Columns: FKTABLE_NAME, FKCOLUMN_NAME 
sp_fkeys @pktable_name='your table name here' 
संबंधित मुद्दे