18.2. Lesson: Utilizando Administrador de BBDD para trabajar con Bases de Datos espaciales en QGIS

Ya hemos visto cómo realizar muchas operaciones de base de datos con QGIS así como con otras herramientas, pero ahora es tiempo de ver la herramienta de Administrador de BBDD que proporciona muchas de las mismas funcionalidades además, más herramientas orientadas a la gestión.

La meta de esta lección: Para aprender cómo interactuar con una base de datos espacial utilizando el Administrador de BBDD de QGIS.

18.2.1. basic Follow Along: Crear una base de datos PostGIS con el Administrador de BBDD

Primero, se debe abrir la interfaz del Administrador de BBDD seleccionando :guilabel:`Base de datos–> Administrador de BBDD –> Administrador de BBDD ` en el menú o seleccionando el icono de Administrador de BBDD sobre la barra de herramientas.

dbManager

Ya deberías ver las conexiones anteriores que hemos configurado y poder expandir la sección myPG y su esquema público para ver las tablas con las que hemos trabajado en secciones anteriores.

La primer cosa que debe notar es que ahora se pueden ver algunos metadatos acerca de los esquemas contenidos en su base de datos.

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

Los esquemas son una forma de agrupar tablas de datos y otros objetos en una base de datos SQL de Postgre y un contenedor para permisos y otras restricciones. La gestión de esquemas PostgreSQL está más allá del alcance de este manual, pero puede encontrar más información sobre ellos en la Documentación de PostgreSQL en esquemas. Puede usar el Administrador de bases de datos para crear nuevos esquemas, pero necesitará usar una herramienta como pgAdmin III o la interfaz de línea de comandos para administrarlos de manera efectiva.

EL Administrador de BBDD también se puede utilizar para gestionar las tablas de su base de datos. Ya hemos visto varias formas de crear y administrar tablas en la línea de comandos, pero ahora vamos a ver cómo hacer esto en el Administrador de BBDD.

En primer lugar, su utilidad para ver los metadatos de una tabla haciendo clic sobre su nombre en el árbol y sólo ver la pestaña Info.

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

Este panel se puede ver la información Información General acerca de la tabla así como la información que la extensión PostGIS mantiene sobre la geometría y sistema de referencia espacial.

Si se desplaza hacia abajo en la pestaña Info, se puede ver más información acerca de Campos, Restricciones y Índices para la tabla que esta visualizando.

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

También es muy útil usar el Administrador de BBDD para simplemente ver los registros en la base de datos de la misma manera que puede hacer esto mediante la visualización de la tabla de atributos de una capa en el árbol de Capas. Se pueden explorar los datos seleccionando la pestaña Tabla

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

También hay una pestaña Vista preliminar que le muestra la capa de datos en una vista previa del mapa.

Haga clic derecho sobre una capa en el árbol y haga clic en Añadir a lienzo añadirá esta capa a su 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. Seleccione Tabla ▶ Editar Tabla del menú, para abrir el diálogo Propiedades de Tabla.

    ../../../_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. Si aún no está abierto, abra la ventana del Administrador de BBDD y expanda el árbol hasta que vea la lista de tablas que ya están en su base de datos.

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

  3. Use el esquema predeterminado Publico y nombre la tabla places.

  4. Añade los campos id, place_name, y elevación como se muestra abajo

  5. Asegúrese de que el campo id está establecido como clave primaria.

  6. Haga clic en la casilla de verificación para Crear columna de geometría y asegúrese de que esté configurado en un tipo PUNTO y déjelo llamado geom y especifique 4326 como el 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

El Asministrador de BBDD también le permitirá realizar algunas tareas básicas de administración de la base de datos. Ciertamente no es un sustituto de una herramienta de administración de bases de datos más completa, pero proporciona algunas funciones que puede utilizar para mantener su base de datos.

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.

Echemos un vistazo a cómo podemos realizar un comando VACUUM ANALYZE desde Administrador de BBDD.

  1. Selecciona una de tus tablas en el árbol del Administrador de BBDD

  2. Seleccione Tabla ▶ Ejecutar Vacuum Analyze desde el menú

PostgreSQL ahora realizará la operación. Dependiendo del tamaño de su mesa, esto puede llevar algún tiempo en completarse.

Puede encontrar más información sobre el proceso VACUUM ANALYZE en la Documentación de PostgreSQL sobre 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. Selecciona la tabla lines en el árbol.

  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. Selecciona la columna id como la columna Columna con valores enteros únicos y la columna geom como la columna de geometría.

  8. Introduce roads_primary como el nombre de la capa (prefijo).

  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

Ya hemos visto cómo importar datos en una base de datos espacial utilizando herramientas de línea de comandos, así que ahora aprendamos cómo usar DB Manager para realizar importaciones.

  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. Selecciona el archivo urban_33S.shp de exercise_data/projected_data como conjunto de datos de entrada

  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. Especifica la Fuente SRID como 32722 y el SRID destino como 4326

  6. Habilitar la casilla a Crear índice espacial

  7. Click en Aceptar para proceder con la importación

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

  9. Click en el botón Actualizar en la Barra de Herramientas del Administrador de BBDD

Ahora puede inspeccionar la tabla en su base de datos haciendo clic en ella en el árbol. Verifique que los datos hayan sido reproyectados comprobando que el Spatial ref: es listado como 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. Selecciona la capa lines en el árbol y haz click en el botón Exportar a archivo en la barra de herramientas para abrir el diálogo Exportar a archivo vectorial.

  2. Click en el botón para seleccionar el Archivo saliente y guarde los datos en su directorio exercise_data como urban_4326.

  3. Establece el SRID de destino como 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

Ahora ha visto cómo usar la interfaz DB Manager en QGIS para administrar sus bases de datos espaciales, ejecutar consultas SQL contra sus datos y cómo importar y exportar datos.

18.2.8. What’s Next?

A continuación, veremos cómo utilizar muchas de estas mismas técnicas con bases de datos SpatiaLite.