sqlserver表外键查询
--本表外键SELECT
f.name AS foreign_key_name
,OBJECT_NAME(f.parent_object_id) AS table_name
,COL_NAME(fc.parent_object_id, fc.parent_column_id) AS constraint_column_name,OBJECT_NAME (f.referenced_object_id) AS referenced_object
,COL_NAME(fc.referenced_object_id, fc.referenced_column_id) AS referenced_column_name,is_disabled
,delete_referential_action_desc,update_referential_action_descFROM sys.foreign_keys AS f
INNER JOIN sys.foreign_key_columns AS fcON f.object_id = fc.constraint_object_id
WHERE f.parent_object_id = OBJECT_ID('table_name');
--外键被参考表
SELECT 主键列ID=b.rkey
,主键列名=(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid) ,外键表ID=b.fkeyid
,外键表名称=object_name(b.fkeyid) ,外键列ID=b.fkey
,外键列名=(SELECT name FROM syscolumns WHERE colid=b.fkey AND id=b.fkeyid) ,级联更新=ObjectProperty(a.id,'CnstIsUpdateCascade') ,级联删除=ObjectProperty(a.id,'CnstIsDeleteCascade')FROM sysobjects a
join sysforeignkeys b on a.id=b.constid join sysobjects c on a.parent_obj=c.idwhere a.xtype='f' AND c.xtype='U'
and object_name(b.rkeyid)='table_name'
因篇幅问题不能全部显示,请点此查看更多更全内容