{"id":639,"date":"2017-06-20T21:57:18","date_gmt":"2017-06-20T21:57:18","guid":{"rendered":"https:\/\/geoadmin.com.br\/?p=639"},"modified":"2021-06-09T10:24:16","modified_gmt":"2021-06-09T13:24:16","slug":"conexao-qgis-postgis","status":"publish","type":"post","link":"https:\/\/geoadmin.com.br\/?p=639","title":{"rendered":"Conex\u00e3o QGIS &#8211; PostGIS"},"content":{"rendered":"<p>Hoje vamos falar sobre uma ferramenta importante do QGIS, usada para conex\u00e3o com banco de dados PostgreSQL\/PostGIS.<\/p>\n<p>Com esta ferramenta voc\u00ea poder\u00e1 gerenciar seus bancos de dados, e as principais formas de intera\u00e7\u00e3o s\u00e3o:<\/p>\n<ul>\n<li>Importar Shapefile para o banco de dados;<\/li>\n<li>Exportar uma tabela do banco de dados para diversos formatos;<\/li>\n<li>Executar queries complexas e carreg\u00e1-las como camada diretamente no QGIS;<\/li>\n<\/ul>\n<p>Para criar a conex\u00e3o devemos acessar o menu <code>Camada &gt; Adicionar Camada &gt; PostGIS<\/code>.<\/p>\n<p>Ser\u00e1 aberta a tela a seguir:<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela1.PNG\" alt=\"Adicionar Camada Postgis\" \/><\/p>\n<p>Ao clicar em <code>Novo<\/code> ser\u00e1 aberta a tela de configura\u00e7\u00e3o de conex\u00e3o onde dever\u00e3o ser inclu\u00eddos os dados de conex\u00e3o. O QGIS suporta a conex\u00e3o tanto com servidores locais, quanto na rede interna, at\u00e9 mesmo na internet.<\/p>\n<p>Veja abaixo a tela de conex\u00e3o com o banco de dados.<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela2.PNG\" alt=\"Configura\u00e7\u00e3o de conex\u00e3o com o banco\" \/><\/p>\n<p>Ap\u00f3s inserir os dados voc\u00ea poder\u00e1 clicar em <code>Testar conex\u00e3o<\/code> para verificar se os dados inseridos est\u00e3o corretos e clicar em <code>OK<\/code> para salvar sua conex\u00e3o.<\/p>\n<p>Se tudo estiver correto ao clicar no bot\u00e3o <code>Conectar<\/code> ser\u00e3o listadas todas as tabelas que possuem colunas geom\u00e9tricas.<\/p>\n<p>A partir da\u00ed voc\u00ea poder\u00e1 adicionar as camadas aos seus projetos, por\u00e9m esta funcionalidade ainda n\u00e3o permite o gerenciamento de Banco de Dados, ela \u00e9 o primeiro passo para gerenci\u00e1-lo.<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela3.PNG\" alt=\"Lista de Tabelas Postgis\" \/><\/p>\n<p>Para acessar a ferramenta de gerenciamento de Banco de dados voc\u00ea dever\u00e1 acessar o menu <code>Banco de Dados &gt; Gerenciador BD &gt; Gerenciador BD<\/code>.<\/p>\n<p>Ao clicar voc\u00ea ver\u00e1 a tela abaixo, note que se expandir o menu do <code>PostGIS<\/code> ir\u00e1 ver a conex\u00e3o criada.<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela5.PNG\" alt=\"Tela Gerenciado Banco de Dados\" \/><\/p>\n<p>Voc\u00ea poder\u00e1 navegar entre as tabelas de seu banco de dados, note que no nome de cada tabela existe um \u00edcone mostrando qual \u00e9 o tipo geom\u00e9trico da tabela. Caso ela n\u00e3o possa geometria, o QGIS utiliza um outro \u00edcone para renderiz\u00e1-la.<\/p>\n<p>Nas abas <code>Info<\/code>, <code>Tabela<\/code> e <code>Pr\u00e9-visualizar<\/code> voc\u00ea poder\u00e1 ter acesso r\u00e1pido aos dados do banco sem a necessidade de carregar a camada em seu projeto.<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela6.PNG\" alt=\"Pr\u00e9-visualiza\u00e7\u00e3o de camadas\" \/><\/p>\n<p>Existem tr\u00eas ferramentas que s\u00e3o muito \u00fateis para a manipula\u00e7\u00e3o dos dados no PostGIS.<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela7.PNG\" alt=\"Ferramentas\" \/><\/p>\n<p>S\u00e3o elas:<\/p>\n<ul>\n<li>Janela SQL<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela8.PNG\" alt=\"Janela SQL\" \/><\/p>\n<p>Atrav\u00e9s da Janela SQL voc\u00ea poder\u00e1 utilizar qualquer query para consultar seu banco de dados, inclusive utilizando fun\u00e7\u00f5es do Postgis.<\/p>\n<pre><code>SELECT\nid,\nST_AsText(geometria) as geometria.\nST_IsValidReason(geometria) as tipo_erro\nFROM uso_solo\nWHERE ST_IsValid(geometria_ = FALSE)\n<\/code><\/pre>\n<p>No exemplo o objetivo \u00e9 listar os pol\u00edgonos com geometria invalida para que possam ser corrigidos.<\/p>\n<p>Foram utilizadas as fun\u00e7\u00f5es:<\/p>\n<p><a href=\"http:\/\/postgis.net\/docs\/ST_GeomCollFromText.html\">ST_GeomFromText<\/a> para retornar as coordenadas em texto;<\/p>\n<p><a href=\"http:\/\/postgis.net\/docs\/ST_IsValidReason.html\">ST_IsValidReason<\/a> para mostrar qual o erro que gerou a geometria invalida e<\/p>\n<p><a href=\"http:\/\/postgis.net\/docs\/ST_IsValid.html\">ST_IsValid<\/a> para listar somente as geometrias inv\u00e1lidas.<\/p>\n<p>Al\u00e9m de listar estes pol\u00edgonos \u00e9 poss\u00edvel carregar o resultado como uma camada, basta marcar a op\u00e7\u00e3o <code>Carregar como uma nova camada<\/code>, para isto \u00e9 necess\u00e1rio que exista no resultado de sua query uma coluna com um valor \u00fanico e uma coluna com o valor geom\u00e9trico, selecione os campos e clique no bot\u00e3o <code>Carregar agora!<\/code>, e uma nova camada ser\u00e1 carregada em seu projeto.<\/p>\n<p>Abaixo figura da camada carregada com o erro encontrado:<\/p>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela9.png\" alt=\"Camada carregada Qgis\" \/><\/p>\n<ul>\n<li>Importar Camada\/arquivo<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela10.PNG\" alt=\"Janela de Importa\u00e7\u00e3o\" \/><\/p>\n<p>Esta ferramenta importa um arquivo do tipo shapefile do QGIS diretamente para o PostGIS. N\u00e3o \u00e9 necess\u00e1rio criar a tabela previamente, ser\u00e1 criada juntamente com as colunas e os tipos definidos no arquivo shapefile.<\/p>\n<ul>\n<li>Exportar Camada\/arquivo<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"\/content\/images\/2017\/06\/tela11.PNG\" alt=\"Exportar Camada\" \/><\/p>\n<p>Esta ferramenta faz o oposto da importa\u00e7\u00e3o, com ela \u00e9 poss\u00edvel exportar uma tabela do banco de dados para um arquivo shapefile ou em algum dos formatos suportados.<\/p>\n<p>Quem trabalha com com geoprocessamento ou dados geogr\u00e1ficos e quer conhecer um pouco mais do PostgreSQL\/PostGIS esta \u00e9 uma ferramenta incr\u00edvel para come\u00e7ar, pois ir\u00e1 lhe poupar algumas horas de trabalho visualizando os resultados das queries direto no mapa.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hoje vamos falar sobre uma ferramenta importante do QGIS, usada para conex\u00e3o com banco de dados PostgreSQL\/PostGIS. Com esta ferramenta voc\u00ea poder\u00e1 gerenciar seus bancos de dados, e as principais formas de intera\u00e7\u00e3o s\u00e3o: Importar Shapefile para o banco de dados; Exportar uma tabela do banco de dados para diversos formatos; Executar queries complexas e &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/geoadmin.com.br\/?p=639\" class=\"more-link\">Leia mais<span class=\"screen-reader-text\"> &#8220;Conex\u00e3o QGIS &#8211; PostGIS&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[31,38,45,18],"class_list":["post-639","post","type-post","status-publish","format-standard","hentry","category-sem-categoria","tag-opensource","tag-postgis","tag-python","tag-qgis"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/639","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=639"}],"version-history":[{"count":1,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/639\/revisions"}],"predecessor-version":[{"id":1309,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/639\/revisions\/1309"}],"wp:attachment":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=639"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=639"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=639"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}