mssql sqlserver 中主外键关系查询方法分享


摘要:
在我们初次接触一个陌生的数据库时,在我们了解了数据表的结构及功能后,我们应该全面了解数据表之间的主外键的关系,
因为主键的关系,直接影响我们插入和删除数据,下文将讲述借助系统表快速了解整个数据库的主外键之间的关系的方法,如下所示:


实现思路:
借助 sys.foreign_keys 和 sys.foreign_key_columns两张系统表,生成主外键之间关联所涉及的列,具体实现方法,如下所示:

 SELECT f.name AS '外键名称',
	OBJECT_NAME(f.parent_object_id) AS '父级表名称',
	COL_NAME(fc.parent_object_id,fc.parent_column_id) AS '父级表涉及字段',
	OBJECT_NAME (f.referenced_object_id) AS '外键所属表',
	COL_NAME(fc.referenced_object_id,fc.referenced_column_id) AS '外键所属表字段'
FROM sys.foreign_keys AS f
INNER JOIN sys.foreign_key_columns AS fc ON f.OBJECT_ID = fc.constraint_object_id