[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