Listando tabelas e seus relacionamentos
Publicado por jotacomm em 23/10/2008
Olá, pessoal
Segue abaixo uma forma de descobrir os relacionamentos existentes entre as tabelas de um banco de dados.
O resultado do sql abaixo é: esquema da tabela (PK), tabela (PK), esquema da tabela (FK) e tabela (FK).
PK – Primary Key – Chave primária.
FK – Foreign Key – Chave estrangeira.
SELECT sch1.nspname,
tab1.relname,
sch2.nspname,
tab2.relname
FROM pg_namespace sch1 JOIN pg_class tab1 ON sch1.oid=tab1.relnamespace
JOIN pg_constraint ON tab1.oid=pg_constraint.confrelid
JOIN pg_class tab2 ON pg_constraint.conrelid=tab2.oid
JOIN pg_namespace sch2 ON tab2.relnamespace=sch2.oid
ORDER BY sch1.nspname,
tab1.relname,
sch2.nspname,
tab2.relname;
Fiquem a vontade para comentários.
[]s