Avelino Brun escreveu:
> Sr. Osvaldo!
> O que pretendo é com um comando simples trazer os dados da filial para a 
> matriz, desconsiderando os dados que já existirem na tabela.
> É claro que tenho o banco de dados bem organizado com indices e tudo o mais.
> O que pretendo é um comando único que me traga o conteúdo todo da filial 
> para a matriz.
> Se algum registro já existir não precisa trazer. E nem quero ficar fazendo 
> testes.
> Simples, trazer todos os clientes da filial, trazer todos os fornecedores da 
> filial, todas duplicatas, todos os pagamentos e assim por diante, mas com um 
> comando único.
> 
> Se ainda não entendem o que quero dizer coloco o seguinte:
> Tenho dois bancos de dados, um na matriz(matriz), outro na filial(filial).
> Quero trabalhar apenas com um banco de dados(geral).
> Como faço para que num banco de dados contenha todos os dados da matriz e 
> filial, mas com uma instrução única?
> 



Se você *não* estiver utilizando sequências em seus bancos de dados 
pode tentar o seguinte:

*Faça back-up de seu banco matriz.*

Execute no banco de dados da filial:
pg_dump --data-only --inserts --file=nome_do_arquivo --format=plain 
bd_filial

Verifique se é necessário utilizar a opção: --encoding=encoding

Verifique se o conteudo do arquivo nome_do_arquivo é realmente o esperado.

Execute no banco de dados da matriz:
psql --dbname db_matriz --file nome_do_arquivo

Emitirá erro para cada um dos inserts de registros duplicados.

Verifique se tudo está de acordo com o esperado, se não estiver 
restaure o back-up.

Osvaldo
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a