[存储过程] 利用存储过程得到某一指定的表与其它的表之间的外键关系

发布时间:2010年01月27日      浏览次数:588 次
--我参照的表名 我的果些字段[5]要参照以下表[1]的某些字段[3]的取值
declare @id bigint
select @id=id from sysobjects where name='d_病人资料库'
select a. name N'被参照表名',b.rkey N'被参照列在被参照表中的位置',c.name N'被参照列名',b.fkey N'参照字段在本表中的列位置' ,d.name N'参照字段名'
from sysforeignkeys b ,sysobjects a,syscolumns c ,(select name,colid from syscolumns where id=@ID ) d
where a.id=b.rkeyid and b.fkeyid=@ID and c.id=a.id and c.colid=b.rkey and d.colid=b.fkey
---我被参的表名 以下的表[1]的某列[2]的取值要求参照我的哪些字段[5]
select a. name N'参照我的表名',c.name N'列名',b.fkey N'参照字段位置' ,b.rkey N'我被参照字段在表中的位置',d.name N'我被参照的字段名'
from sysforeignkeys b ,sysobjects a,syscolumns c ,(select name,colid from syscolumns where id=@ID) d
where a.id=b.fkeyid and b.rkeyid=@ID and c.id=a.id and c.colid=b.fkey and d.colid=b.rkey
免责声明:本站相关技术文章信息部分来自网络,目的主要是传播更多信息,如果您认为本站的某些信息侵犯了您的版权,请与我们联系,我们会即时妥善的处理,谢谢合作!