获取主键链接到外键的所有表

时间:2011-10-05 08:43:42

标签: mysql sql oracle postgresql

我是否可以检索主键与另一个表中的外键相关联的所有表名和关联的列名?

例如:我有一个表EMPLOYEE,其主键通过许多其他表中的外键链接,例如DEPTACCOUNT等等。

有没有办法可以获取那些我使用员工的主键作为外键的表的表名和列名?

3 个答案:

答案 0 :(得分:1)

您可以使用主视图的“查看依赖关系”功能在SSMS中获取该信息。 还有一些工具可以帮助你做到这一点,例如“SQLSpec”。 这是一个非常好的数据库文档工具。

http://www.sql-server-performance.com/2007/sqlspec/

希望这有帮助。

答案 1 :(得分:0)

偶然的机会今天我在脑海中得到了相同的查询并使用谷歌我发现了以下sql

SELECT OBJECT_NAME(OBJECT_ID) AS NameofConstraint,
SCHEMA_NAME(schema_id) AS SchemaName,
OBJECT_NAME(parent_object_id) AS TableName,
type_desc AS ConstraintType
FROM sys.objects
WHERE type_desc LIKE '%CONSTRAINT'

您可以根据需要更新LIKE '%CONSTRAINT'

我在sqlserver2005

中使用此功能

答案 2 :(得分:0)

非常感谢大家...我在Postgresql中做到了我在哪里解雇了以下查询:

SELECT constraint_name 
FROM information_schema.referential_constraints 
WHERE unique_constraint_name='table_name_pkey'