Em 27 de junho de 2017 09:14, Celso - Gmail <clorenzett...@gmail.com> escreveu: > > Bom dia senhores, > > Estou tentando descobrir na pg_depend as dependências entre os objetos do banco de dados. > O objetivo é exportar eles na ordem correta que devem ser criados/atualizados em outro banco de dados. > Imagino que em algum lugar deva existir essa informação, visto que o pg_dump/pg_restore faz isso. > > Ou exista outro caminho para chegar neste objetivo. > > Abaixo criei 3 objetos simples para exemplicar e facilitar que puder ajudar. > > CREATE OR REPLACE VIEW vw_teste AS SELECT 1 AS emp_empresa; > CREATE OR REPLACE VIEW vw_teste_2 AS SELECT emp_empresa FROM vw_teste; > > CREATE OR REPLACE FUNCTION fc_empresa() RETURNS INTEGER AS > $BODY$ > SELECT emp_empresa FROM vw_teste; > $BODY$ > LANGUAGE sql; > > O SQL abaixo retorna apenas o Schema como dependência e “deveria” retornar a vw_teste também. > > SELECT * FROM pg_depend where objid in (select oid from pg_class where relname = 'vw_teste_2'); >
Essa informação de "dependência" entre os objetos é armazenada na tabela "pg_depend" [1] do catálogo. No wiki [2] tem uns exemplos de como usar ela para mostrar dependências entre objetos. Att, [1] https://www.postgresql.org/docs/current/static/catalog-pg-depend.html [2] https://wiki.postgresql.org/wiki/Pg_depend_display -- Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral