Есть ли способ в PostgreSQL найти все представления, которые используют сторонние обертки данных? - PullRequest
0 голосов
/ 23 апреля 2019

Я работаю над проектом базы данных Postgres, который вообще не был задокументирован, и одной из основных проблем является учет зависимости от сторонних сборщиков данных. Я могу запросить все внешние оболочки данных в Postgres SQL, но я не знаю, как связать их с представлениями, используя их. Я сделал дамп схемы, используя pg_dump, и попытался найти, где использовались обертки, но их слишком много. Есть ли инструмент, который может использовать дамп схемы и понять его, или есть другой способ получить эту информацию о зависимости?

1 Ответ

2 голосов
/ 23 апреля 2019

Я думаю, что это должно сделать это:

SELECT DISTINCT
  pg_rewrite.ev_class::regclass AS view,
  pg_class.oid::regclass AS fdw
FROM pg_depend
JOIN pg_rewrite ON pg_rewrite.oid = objid
JOIN pg_class ON pg_class.oid = refobjid
WHERE pg_class.relkind = 'f'
...