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

Намерете зависими обекти за таблица или изглед

Предложеното решение не работи за мен с postgresql 9.1.4

това работи:

SELECT dependent_ns.nspname as dependent_schema
, dependent_view.relname as dependent_view 
, source_ns.nspname as source_schema
, source_table.relname as source_table
, pg_attribute.attname as column_name
FROM pg_depend 
JOIN pg_rewrite ON pg_depend.objid = pg_rewrite.oid 
JOIN pg_class as dependent_view ON pg_rewrite.ev_class = dependent_view.oid 
JOIN pg_class as source_table ON pg_depend.refobjid = source_table.oid 
JOIN pg_attribute ON pg_depend.refobjid = pg_attribute.attrelid 
    AND pg_depend.refobjsubid = pg_attribute.attnum 
JOIN pg_namespace dependent_ns ON dependent_ns.oid = dependent_view.relnamespace
JOIN pg_namespace source_ns ON source_ns.oid = source_table.relnamespace
WHERE 
source_ns.nspname = 'my_schema'
AND source_table.relname = 'my_table'
AND pg_attribute.attnum > 0 
AND pg_attribute.attname = 'my_column'
ORDER BY 1,2;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвам динамични имена на колони в оператор UPDATE или SELECT във функция?

  2. SQL:Когато става въпрос за НЕ В и НЕ РАВНО НА, кое е по-ефективно и защо?

  3. Команда Postgresql COPY, даваща грешка за отказа на разрешения

  4. Използване на row_to_json() с вложени съединения

  5. Уникално ограничение за комбинация от две колони?