Możesz faktycznie zebrać niektóre z tych informacji, przeszukując wewnętrzne informacje „zależne” bazy danych. Jeśli coś zależy od innego, to sugeruje, że to używa. Oto przykładowe zapytanie, które pokaże Ci, jak przejść przez dwie zaangażowane struktury:
SELECT
c1.oid as relid,
n1.nspname || '.' || c1.relname as relation,
c1.relkind,
c2.oid as relid,
n2.nspname || '.' || c2.relname as dependency,
c2.relkind
FROM
pg_depend d,
pg_class c1,
pg_namespace n1,
pg_class c2,
pg_namespace n2
WHERE
d.objid = c1.oid AND
c1.relnamespace = n1.oid AND
n1.nspname NOT IN('information_schema', 'pg_catalog') AND
n1.nspname !~ '^pg_toast' AND
d.refobjid = c2.oid AND
c2.relnamespace = n2.oid AND
n2.nspname NOT IN('information_schema', 'pg_catalog') AND
n2.nspname !~ '^pg_toast' AND
c1.oid != c2.oid
GROUP BY n1.nspname,c1.relname,c1.oid,c1.relkind,
n2.nspname,c2.relname,c2.oid,c2.relkind
ORDER BY n1.nspname,c1.relname;
Informacje o tych wszystkich wewnętrznych bitach można znaleźć w katalogu systemowym dokumentacja.