18.2. Lesson: Usando o Gerenciador BD para trabalhar com bancos de dados espaciais no QGIS

Já vimos como realizar muitas operações de banco de dados com o QGIS, bem como com outras ferramentas, mas agora é hora de olhar para a ferramenta Gerenciador BD que fornece grande parte destas mesmas funcionalidades, bem como mais ferramentas de gestão orientadas.

A meta para esta lição: Aprender como interagir com bancos de dados espaciais usando o Gerenciador BD do QGIS.

18.2.1. basic Follow Along: Gerenciando Base de dados PostGIS com Gerenciador BD

Você deve primeiro abrir a interface do Gerenciador BD selecionando Base de Dados –> Gerenciador BD –> Gerenciador BD no menu ou selecionando o ícone Gerenciador BD na barra de ferramentas.

dbManager

You should already see the previous connections we have configured and be able to expand the myPG section and its public schema to see the tables we have worked with in previous sections.

A primeira coisa que irá notar é que agora você pode ver os metadados dos esquemas contidos em sua base de dados.

../../../_images/db_manager_dialog.png

Os esquemas são uma maneira de agrupar tabelas de dados e outros objetos em um banco de dados PostgreSQL e um contêiner para permissões e outras restrições. O gerenciamento de esquemas do PostgreSQL está além do escopo deste manual, mas você pode encontrar mais informações sobre eles na Documentação do PostgreSQL sobre esquemas. Você pode usar o Gerenciador de BD para criar novos esquemas, mas precisará usar uma ferramenta como o pgAdmin III ou a interface da linha de comandos para gerenciá-los efetivamente.

O Gerenciador BD pode também ser usado para gerenciar tabelas do seu banco de dados. Nós já vimos várias maneiras de criar e manipular tabelas na linha de comando, mas agora vamos ver como fazer isso usando o Gerenciador BD.

Para começar, é interessante dar uma olhada nos metadados da tabela clicando no nome da mesma na árvore e verificando a guia Info.

../../../_images/table_info.png

Neste painel você pode ver as Informações gerais sobre a tabelas bem como as informações que a extensão PostGIS mantém sobre a geometria e o sistema de referencia espacial.

Se você rolar para baixo a guia Info, poderá ver mais informações sobre Campos, Restrições e Índices relacionados a tabela selecionada.

../../../_images/table_info_fields.png

Também é muito útil usar o Gerenciador BD simplesmente para ver os registros no banco de dados de maneira parecida com que pode-se ver a tabela de atributos de uma camada na Árvore de Camadas. Você pode navegar pelos dados selecionando a guia Tabela.

../../../_images/table_panel.png

Há também a guia Pré-visualizar que mostra a camada em uma pré-visualização de um mapa.

Clicando com o botão direito em uma camada da árvore e selecionando Adicionar à tela irá adicionar essa camada ao mapa.

Hasta ahora sólo hemos visto los esquemas, tablas y sus metadatos de la base de datos, pero lo que si queríamos era modificar la tabla para añadir una columna más, tal vez? El Administrador de BBDD le permite hacer esto directamente.

  1. Seleccione la tabla que desee editar en el árbol

  2. Select Table ► Edit Table from the menu, to open the Table Properties dialog.

    ../../../_images/edit_table.png

Se puede utilizar este diálogo para añadir columnas, añadir columnas de geometría, editar columnas existentes o eliminar una columna completamente.

Utilice la pestaña Restricciones, se puede administra que campos se utilizan como clave primaria o para borrar una restricción existente.

../../../_images/constraints_panel.png

La pestaña Índices se puede utilizar para añadir y borrar ambos índices espacial y normal.

../../../_images/indexes_panel.png

18.2.2. basic Follow Along: Crear una nueva tabla

Ahora que hemos pasado por el proceso de trabajar con tablas existentes en nuestra base de datos, vamos a usar el Administrador de BBDD para crear una nueva tabla.

  1. If it is not already open, open the DB Manager window, and expand the tree until you see the list of tables already in your database.

  2. Desde el menú, seleccione Tabla–> Crear Tabla para mostrar el diálogo Crear Tabla.

  3. Use the default Public schema and name the table places.

  4. Add the id, place_name, and elevation fields as shown below

  5. Make sure the id field is set as the primary key.

  6. Click the checkbox to Create geometry column and make sure it is set to a POINT type and leave it named geom and specify 4326 as the SRID.

  7. Haga clic en la casilla Crear índice espacial y haga clic Crear para crear la tabla.

    ../../../_images/create_table.png
  8. Descarte el diálogo que conoce que la tabla fue creada y haga clic en Cerrar para cerrar el diálogo Crear Tabla.

Ahora puede examinar su tabla en el Administrador de BBDD y por supuesto encontrará que no hay datos en él. Desde aquí se puede Conmutar edición sobre el menú Capa e iniciar a añadir sitios a su tabla.

18.2.3. basic Follow Along: Administración de base de datos básica

The DB Manager will also let you do some basic database administration tasks. It is certainly not a substitute for a more complete database administration tool, but it does provide some functionality that you can use to maintain your database.

Las tablas de base de datos a menudo pueden llegar a ser bastante grandes y las tablas que están modificando frecuentemente puede dejar botado al resto de registros que no son necesarios por PostgreSQL. El comando VACUUM se encarga de hacer una especie de recolección de basura para compactar y analizar opcional sus tablas para mejorar el rendimiento.

Let us take a look at how we can perform a VACUUM ANALYZE command from within DB Manager.

  1. Select one of your tables in the DB Manager Tree

  2. Select Table ► Run Vacuum Analyze from the menu

PostgreSQL will now perform the operation. Depending on how big your table is, this may take some time to complete.

You can find more information about the VACUUM ANALYZE process in the PostgreSQL Documentation on VACUUM ANALYZE.

18.2.4. basic Follow Along: Ejecutar consultas SQL Queries con el Administrador de BBDD

El Administrador de BBDD también proporciona una forma para que pueda escribir consultas en las tablas de base de datos y los resultados a vistas. Ya hemos visto este tipo de funciones en el panel Explorar, pero vamos de nuevo aquí con el Administrador de BBDD.

  1. Select the lines table in the tree.

  2. Seleccione el botón Ventana SQL en la barra de herramientas del Administrador de BBDD.

    ../../../_images/sql_window_btn.png
  3. Componga la siguiente Consulta SQL en el espacio proporcionado:

    select * from lines where roadtype = 'major';
    
  4. Haga clic en el botón Ejecutar (F5) para ejecutar la consulta.

  5. Ahora se debe ver el registro que coinciden en el panel Resultado

    ../../../_images/sql_results.png
  6. Haga clic en la casilla Cargar como nueva capa para añadir el resultado a su mapa.

  7. Select the id column as the Column with unique integer values and the geom column as the Geometry column.

  8. Enter roads_primary as the Layer name (prefix).

  9. Haga clic ¡Cargar ahora! para cargar los resultados como una nueva capa en su mapa.

    ../../../_images/sql_add_to_map.png

La capa que corresponde a su consulta ahora se despliega sobre su mapa. Se puede por supuesto utilizar esta herramienta de consulta para ejecutar cualquier comando SQL arbitrario incluyendo muchos de los que vimos en los módulos y secciones anteriores.

18.2.5. Importar datos en una base de datos con el Administrador de BBDD

Já vimos como importar dados para um banco de dados espacial usando ferramentas de linha de comando; agora, vamos aprender como usar o Gerenciador de BD para fazer importações.

  1. Haga clic en botón Importar capa/archivo en la barra de herramientas en el diálogo del Administrador de BBDD.

    ../../../_images/import_layer_btn.png
  2. Select the urban_33S.shp file from exercise_data/projected_data as the input dataset

  3. Haga clic en el botón Actualizar Opciones para pre-llenar algunos de los valores del formulario.

  4. Asegúrese que la opción Crear nueva tabla esta seleccionada.

  5. Specify the Source SRID as 32722 and the Target SRID as 4326

  6. Habilitar la casilla a Crear índice espacial

  7. Click OK to perform the import

    ../../../_images/import_urban.png
  8. Cerrar el diálogo que sabe que la importación fue exitosa.

  9. Click the Refresh button on the DB Manager Toolbar

You can now inspect the table in your database by clicking on it in the Tree. Verify that the data has been reprojected by checking that the Spatial ref: is listed as WGS 84 (4326).

../../../_images/urban_info.png

Haga clic derecho sobre la tabla en el árbol y una selección Añadir al lienzo se añadirá la tabla como capa en su mapa.

18.2.6. Exportando datos desde una base de datos con el Administrador de BBDD

Por supuesto el Administrador de BBDD también puede ser utilizado para exportar datos desde su base de datos espacial, por lo que vamos a echar un vistazo a cómo se hace.

  1. Select the lines layer in the Tree and click the Export to File button on the toolbar to open the Export to vector file dialog.

  2. Click the button to select the Output file and save the data to your exercise_data directory as urban_4326.

  3. Set the Target SRID as 4326.

  4. Haga clic en Aceptar para inicializar la exportación.

    ../../../_images/export_to_vector.png
  5. Cierre el diálogo que le permite saber que la exportación fue exitosa y cierre el administrador de BBDD.

Ahora se puede examinar el archivo shape que creó con el panel de Explorador.

../../../_images/inspect_vector_output.png

18.2.7. In Conclusion

You have now seen how to use the DB Manager interface in QGIS to manage your spatial databases, to execute SQL queries against your data and how to import and export data.

18.2.8. What’s Next?

Next, we will look at how to use many of these same techniques with SpatiaLite databases.