1. 程式人生 > >Sql Server 查詢外來鍵對應的Table 的通用方法

Sql Server 查詢外來鍵對應的Table 的通用方法

 

SELECT oSub.name AS [子表名稱] ,
            fk.name AS [外來鍵名稱] ,
            SubCol.name AS [子表列名] ,
            oMain.name AS [主表名稱] ,
            MainCol.name AS [主表列名]
FROM sys.foreign_keys fk
            JOIN sys.all_objects oSub ON ( fk.parent_object_id = 
            oSub.object_id )
            
JOIN sys.all_objects oMain ON ( fk.referenced_object_id = oMain.object_id ) JOIN sys.foreign_key_columns fkCols ON ( fk.object_id = fkCols.constraint_object_id ) JOIN sys.columns SubCol ON ( oSub.object_id = SubCol.object_id AND
fkCols.parent_column_id = SubCol.column_id ) JOIN sys.columns MainCol ON ( oMain.object_id = MainCol.object_id AND fkCols.referenced_column_id = MainCol.column_id ) WHERE fk.name LIKE '@FK_OEE_DEFE_REFERENCE_SYSTEM_UE';

 

'@FK_OEE_DEFE_REFERENCE_SYSTEM_UE'為外來鍵的名稱