[OSGeo-Brasil] do qgis para o postgis

Daniel Araújo Miranda miranda.dam em dpf.gov.br
Quinta Novembro 3 13:41:39 EDT 2011


  O ogr2ogr de fato é mais rápido, e realiza o upload direto para o
banco

  Eu não uso esse comando pois:
 1. não é possível ver com antecedência o que vai ser feito com o banco
antes de realizar as alterações.
 2. Se os atributos possuem acentos, cedilha, etc. é mais fácil usar a
opção -W do shp2pgsql para não carregar caracteres inválidos no banco.

Eu uso algo nessa linha (atente para a opção '-a'):

  shp2pgsql -a -W iso8859-1 teste1.shp schema.tabela >
novos_registros.sql
  shp2pgsql -a -W iso8859-1 teste2.shp schema.tabela >>
novos_registros.sql
  shp2pgsql -a -W iso8859-1 teste3.shp schema.tabela >>
novos_registros.sql

ou algo mais automático no linux:
  find /home/usuario/shapes_para_incluir/ -iname "*.shp" -exec shp2pgsql
-a '{}' schema.tabela ';' > novos_registros.sql

Depois de dar uma conferida no que foi gravado no novos_registros.sql,
você pode colar o texto em uma query do pgadmin ou rodar:
  psql -d database -h ip.do.servidor.postgresql -U usuario <
novos_registros.sql

p.s.:iso8859-1 é o mais comum (latin1), mas se não funcionar, dá para
tentar utf-8, cp850, etc. 

--miranda


On Thu, 2011-11-03 at 09:44 -0200, Pablo Carreira wrote:
> Olá Koblitz,
> 
> Como o Luiz disse o ogr2ogr é a maneira mais fácil mesmo. Caso sejam
> muitas importações você pode integrar o ogr no python, através da API
> ou apenas rodando o comando. Se for apenas uma pequena importação, no
> próprio qgis você pode copiar e colar do shape para o postgis,
> funciona. 
> 
> Estou experimentando o Django aqui também, é muito interessante,
> inclusive montei um servidor no Amazon EC2. Se quiser trocar mais
> experiências estou a disposição.
> 
> Abraços.
> 
> Pablo Torres Carreira 
> 
> 
> ______________________________________________________________________
> Date: Thu, 3 Nov 2011 08:13:47 -0200
> Subject: Re: [OSGeo-Brasil] do qgis para o postgis
> From: motta.luiz em gmail.com
> To: rodrigokoblitz em yahoo.com.br
> CC: brasil em lists.osgeo.org
> 
> Koblitz,
> 
> 
> Pelas ferramentas do QGIS (DBManager, SPIT e Postgis Manager) não
> podemos fazer o update de uma tabela no Postgres com os dados de um
> shapefile.
> 
> 
> Para fazer updates de uma tabela com vários shapefiles, acredito que
> isso seja seu caso, vc. pode usar o utilitário "ogr2ogr". Vc. pode ver
> num post onde eu uso essa ferramenta para criar uma tabela do PRODES
> no Postgres/Postgis com todos os shapefiles disponibilizados no INPE,
> ver em :
> http://geoluislopes.blogspot.com/2011/04/montando-banco-de-dados-espacial-com_30.html
> 
> 
> Abraços,
> Luiz
> 
> 
> PS: Estou iniciando um projeto com Django, depois podemos trocar umas
> ideias.
> 
> Em 3 de novembro de 2011 01:39, Rodrigo Koblitz
> <rodrigokoblitz em yahoo.com.br> escreveu:
>         
>         Buenos a todos,
>         estou com uma questão agora e mais uma vez estou aqui....
>         
>         Seguinte: estou querendo exportar arquivos do qgis para o
>         postgis. Entretanto pela ferramenta do Postgis manager, apenas
>         consigo fazer isso criando uma nova tabela no postgis. Do
>         mesmo modo que pelo SPIT.
>         Bom, ficar criando novas tabelas em um banco de dados é
>         impraticável de qualquer maneira.
>         Por isso gostaria de saber se alguém conhece um jeito de nós
>         importarmos um shape e ele ser apenas uma linha em uma tabela
>         pré existente.
>         Depois disso faltará apenas integrar via web, estou usando o
>         Django, e concluimos uma baita de uma etapa.
>         
>         Forte abraço a todos,
>         Koblitz
>         
>         
>         _______________________________________________
>         Brasil mailing list
>         Brasil em lists.osgeo.org
>         http://lists.osgeo.org/mailman/listinfo/brasil
>         
> 
> 
> 
> _______________________________________________ Brasil mailing list
> Brasil em lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/brasil
> _______________________________________________
> Brasil mailing list
> Brasil em lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/brasil




Mais detalhes sobre a lista de discussão Brasil