PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как документирате кода на вашата база данни, за да видите зависимостите между обектите на базата данни?

Всъщност можете да съберете част от тази информация, като направите запитване към вътрешната информация „зависи“ на базата данни. Ако нещо зависи от друго, това предполага, че то го използва. Ето примерна заявка, за да ви даде представа как да преминете през двете включени структури:

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;

Информация за всички тези вътрешни битове може да бъде намерена в системен каталог документация.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Едновременен процес, вмъкващ данни в база данни

  2. Ляво съединение с име на динамична таблица, получено от колона

  3. Топ GUI инструменти за PostgreSQL

  4. Как да нулирате работещия SUM, след като достигне праг?

  5. Приложение за наблюдение на PostgreSQL заявки в реално време?