SQL Server查询表的主外键(

SELECT 
外键表ID   = b.fkeyid ,
外键表名称 = object_name(b.fkeyid) ,
外键列ID   = b.fkey ,
外键列名   = (SELECT name FROM syscolumns WHERE colid = b.fkey AND id = b.fkeyid) ,
主键表ID   = b.rkeyid ,
主键表名   = object_name(b.rkeyid) ,
主键列ID   = b.rkey ,
主键列名   = (SELECT name FROM syscolumns WHERE colid = b.rkey AND id = b.rkeyid) ,
级联更新   = 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.id 
WHERE a.xtype = 'F' AND c.xtype = 'U'

Reference:

http://www.cnblogs.com/wuqingqiang/archive/2012/11/27/2790924.html

猜你喜欢

转载自heaven-arch.iteye.com/blog/2306564