Etiquetas

Qgis (Base de datos)

 Base de Datos en QGIS ofrece una serie de herramientas para interactuar con bases de datos espaciales y no espaciales. Se usa para gestionar, visualizar y realizar análisis en datos que se almacenan en servidores de bases de datos geoespaciales como PostGIS, SpatiaLite, GeoPackage y otros. A continuación, te detallo las principales opciones de este menú:

1. Administrador de bases de datos



En el Administrador de bases de datos de QGIS, varios íconos permiten gestionar y manipular datos de manera más eficiente. A continuación se indican las funciones de  Actualizar, Ventana SQL, Importar capa/Archivo, y Exportar archivo.


1. Actualizar (Icono de recargar)

  • Descripción: Actualizar tiene el símbolo de una flecha circular, y su función principal es recargar o refrescar el contenido de las bases de datos que estás explorando.
  • Uso:
    • Cuando realizas cambios en la base de datos (como agregar nuevas tablas, vistas, o editar registros), es posible que esos cambios no se reflejen de inmediato en el panel del Administrador de bases de datos.
    • Al hacer clic en el botón Actualizar, la lista de tablas, vistas y otros objetos se actualiza para mostrar el estado más reciente de la base de datos.

2. Ventana SQL (Consola SQL)

  • Descripción: Este ícono suele tener el símbolo de un bloque de texto o una ventana con líneas que representan código. Te permite abrir la Consola SQL para ejecutar consultas SQL directamente sobre la base de datos a la que estás conectado.
  • Uso:
    • Escribes y ejecutas consultas SQL para filtrar, modificar o analizar los datos de la base de datos.
    • Ideal para realizar consultas avanzadas que requieren condiciones específicas, agrupamientos o cálculos dentro de las tablas.
  • Funcionalidades principales:
    • Visualización de datos: Puedes seleccionar datos específicos según condiciones que tú definas. Por ejemplo, si tienes una tabla de edificios, puedes hacer una consulta para mostrar solo los edificios con más de 10 pisos:

      SELECT * FROM edificios WHERE pisos > 10;
    • Crear nuevas vistas o tablas: Puedes ejecutar comandos SQL que creen vistas o tablas en la base de datos.
    • Modificar datos: Puedes hacer actualizaciones, eliminaciones o inserciones directamente desde la consola SQL.
  • Ejemplo: Ejecutas una consulta para seleccionar todas las carreteras que están en mal estado:

    SELECT * FROM carreteras WHERE estado = 'mal';
    Luego, puedes exportar ese subconjunto de datos como una nueva capa o archivo.

3. Importar capa/Archivo (Icono de capa con flecha hacia adentro)

  • Descripción: Este ícono suele representar una capa o archivo con una flecha que apunta hacia adentro. Permite importar datos desde QGIS a una base de datos conectada (por ejemplo, PostGIS, SpatiaLite, o GeoPackage).
  • Uso:
    • Sirve para cargar capas que ya están presentes en QGIS (como shapefiles, GeoPackages, etc.) y almacenarlas dentro de una base de datos espacial.
    • Esto es útil cuando necesitas mover datos desde archivos locales a una base de datos para hacer que los datos sean más accesibles y gestionables en un entorno de base de datos.
  • Proceso:
    1. Selecciona la capa que deseas importar en la ventana de QGIS.
    2. Haz clic en Importar capa/Archivo.
    3. Se abrirá una ventana para que configures la importación:
      • Nombre de la tabla: Elige el nombre de la tabla que se creará en la base de datos.
      • Sistema de referencia espacial (SRS): Define el sistema de coordenadas en el que se guardará la capa.
      • Esquema: Si tu base de datos tiene esquemas, elige el esquema donde deseas importar la capa.
      • Opciones adicionales: Puedes definir propiedades adicionales como la clave primaria, índice espacial, etc.
    4. Haz clic en Aceptar para iniciar la importación.

4. Exportar archivo (Icono de capa con flecha hacia afuera)

  • Descripción: El ícono de Exportar archivo generalmente tiene una capa o archivo con una flecha apuntando hacia afuera. Permite exportar capas o tablas desde la base de datos a un archivo externo, como un shapefile, TIFF o GeoPackage.
  • Uso:
    • Puedes exportar datos que están almacenados en la base de datos (como una tabla PostGIS o SpatiaLite) a un formato de archivo que puedas compartir o utilizar en otros software GIS.
    • Esta opción es útil cuando necesitas hacer un respaldo de los datos o compartir una parte de la base de datos con alguien que no tiene acceso a la misma.
  • Proceso:
    1. Selecciona la capa o tabla que deseas exportar en el panel izquierdo del Administrador de bases de datos.
    2. Haz clic en Exportar archivo.
    3. Se abrirá una ventana para definir los parámetros de exportación:
      • Formato de salida: Selecciona el formato de archivo (shapefile, GeoPackage, TIFF, etc.).
      • Ubicación: Elige la carpeta donde se guardará el archivo exportado.
      • Sistema de referencia espacial (SRS): Define el sistema de coordenadas en el que quieres exportar la capa.
      • Filtros (opcional): Puedes aplicar filtros para exportar solo una parte de la tabla.
    4. Haz clic en Aceptar para exportar el archivo.

5.Proveedores de bases de datos

  • El apartado de Proveedores en el Administrador de bases de datos permite que QGIS se conecte y trabaje con diferentes tipos de bases de datos geoespaciales y formatos de almacenamiento. Los proveedores son básicamente los "conectores" que QGIS utiliza para comunicarse con diferentes bases de datos.

  • Tipos de Proveedores más comunes:

    • PostGIS: Un proveedor para conectar con bases de datos PostgreSQL que tienen la extensión espacial PostGIS instalada. Permite gestionar grandes conjuntos de datos espaciales y realizar análisis avanzados directamente en la base de datos.
    • SpatiaLite: Un proveedor que permite conectar con bases de datos SQLite que incluyen datos espaciales a través de la extensión SpatiaLite.
    • GeoPackage: Un formato basado en SQLite que puede contener múltiples capas geoespaciales, tanto vectoriales como ráster. Este proveedor gestiona la conexión con archivos GeoPackage.
    • Oracle Spatial: Soporte para bases de datos Oracle con capacidades espaciales.
    • MSSQL: Un proveedor que se conecta a bases de datos SQL Server con soporte para datos espaciales.

6. Pestaña "Info"

  • La pestaña Info te muestra información básica sobre la tabla o capa que hayas seleccionado en el Administrador de bases de datos.

  • Información que se muestra:

    • Nombre de la tabla o capa: El nombre que tiene el recurso en la base de datos.
    • Tipo de datos: Indica si es una capa vectorial o si contiene geometrías específicas como puntos, líneas o polígonos.
    • Sistema de referencia espacial (CRS): Muestra el CRS (Sistema de Referencia de Coordenadas) que utiliza la tabla o capa. Esto es fundamental para saber cómo se interpretan y proyectan los datos espaciales en el mapa.
    • Número de registros: Indica cuántos elementos (filas) contiene la tabla o capa.
    • Tamaño: El tamaño del archivo o la cantidad de espacio que ocupa en la base de datos.

7. Pestaña "Tabla"

  • La pestaña Tabla muestra los datos atributivos o tabulares de la tabla o capa seleccionada. Es decir, aquí puedes ver el contenido de las columnas que almacenan información descriptiva o atributos de los elementos espaciales (como nombres, códigos, alturas, áreas, etc.).

  • Características:

    • Vista de los atributos: Muestra una tabla con filas (registros) y columnas (atributos). Cada fila representa un elemento en la capa (como un punto, línea o polígono), y cada columna almacena un valor de atributo para ese elemento.
    • Edición de datos: Desde esta pestaña, puedes activar el modo de edición (en caso de que tengas permisos) y modificar los valores de los atributos. Esto es útil para corregir o actualizar datos directamente desde la base de datos sin necesidad de exportarlos a un archivo externo.
    • Ordenar y filtrar: Puedes ordenar los datos por columnas y aplicar filtros para visualizar solo los registros que cumplan con ciertos criterios.

8. Pestaña "Vista preliminar"

  • La pestaña Vista preliminar permite visualizar los datos espaciales directamente en una pequeña ventana de mapa dentro del Administrador de bases de datos. Esta vista es muy útil para obtener una representación visual rápida de los datos geoespaciales sin tener que cargarlos en el lienzo principal de QGIS.

  • Características principales:

    • Visualización rápida: Muestra una vista previa de la geometría de la capa seleccionada (puntos, líneas o polígonos) directamente en un mapa básico.
    • Interactividad básica: Aunque la vista preliminar es una representación simplificada, permite hacer zoom y desplazarse por los datos para ver los detalles de las geometrías.
    • Vista preliminar de datos vectoriales y ráster: Puedes visualizar tanto capas vectoriales como ráster (si la base de datos las soporta).
  • Limitaciones:

    • La funcionalidad de la Vista preliminar es más limitada que la del lienzo principal de QGIS. No tiene las mismas opciones de análisis o personalización, pero es suficiente para revisar cómo se ven los datos de manera rápida.

Conectar a base de datos


Para conectarse a una base de datos desde el Administrador de bases de datos en QGIS, debes seguir una serie de pasos que dependen del tipo de base de datos a la que te quieras conectar, como PostGIS, SpatiaLite, GeoPackage, Oracle Spatial, entre otras. A continuación, te explico cómo hacerlo para las bases de datos más comunes.

1. PostGIS

PostGIS es una extensión de la base de datos PostgreSQL que añade soporte para datos geoespaciales, convirtiéndola en una potente base de datos geográfica. PostGIS extiende a PostgreSQL con tipos de datos espaciales y funciones avanzadas para gestionar y analizar geometrías como puntos, líneas y polígonos.

Características principales:

  • Almacenamiento de geometrías: Soporta diferentes tipos de geometrías, como puntos, líneas, polígonos, multipuntos, etc.
  • Funciones espaciales avanzadas: Incluye cientos de funciones para realizar operaciones geoespaciales como intersección, unión, buffer, distancia, área, y mucho más.
  • Escalabilidad: Diseñado para manejar grandes volúmenes de datos espaciales de manera eficiente, lo que lo hace adecuado para proyectos de gran envergadura.
  • Soporte para CRS (Sistemas de Referencia de Coordenadas): PostGIS puede almacenar geometrías en múltiples sistemas de coordenadas y reproyectarlas automáticamente.
  • Consultas SQL espaciales: Permite hacer consultas espaciales complejas usando SQL, lo que lo hace extremadamente flexible para analizar y gestionar datos geográficos.

Uso típico:

  • Grandes proyectos que requieren bases de datos espaciales a gran escala, como los sistemas de información geográfica (SIG) gubernamentales, proyectos de infraestructura, planificación urbana, análisis ambiental y otros proyectos de gran envergadura.
  • QGIS se integra perfectamente con PostGIS, lo que permite cargar y trabajar con capas espaciales almacenadas en una base de datos PostGIS.

Ventajas:

  • Manejo eficiente de grandes conjuntos de datos espaciales.
  • Integración avanzada con herramientas SIG y sistemas de servidores como GeoServer.
  • Permite la colaboración en tiempo real entre múltiples usuarios.

Desventajas:

  • Necesita instalación y configuración de PostgreSQL y la extensión PostGIS, lo que puede requerir más tiempo para configurarlo inicialmente.

2. SpatiaLite

SpatiaLite es una extensión de la base de datos SQLite que añade soporte para datos geoespaciales. SQLite es una base de datos ligera y autónoma (es decir, no necesita un servidor), lo que la hace ideal para proyectos más pequeños o portátiles.

Características principales:

  • Base de datos ligera: SpatiaLite se basa en un solo archivo, lo que la hace extremadamente portátil y fácil de manejar. No necesita instalación de un servidor de base de datos.
  • Compatibilidad geoespacial: Soporta tipos de datos espaciales como puntos, líneas y polígonos, al igual que PostGIS.
  • Funciones espaciales: Al igual que PostGIS, SpatiaLite incluye funciones para realizar análisis espaciales como intersección, buffer, distancia, etc.
  • Consultas espaciales SQL: Permite realizar consultas espaciales utilizando SQL.
  • Soporte para múltiples capas: Puede almacenar varias capas geoespaciales en un solo archivo.

Uso típico:

  • Proyectos pequeños o medianos donde no se necesita una base de datos compleja.
  • Ideal para aplicaciones móviles, proyectos portátiles o cuando se necesita trabajar con una base de datos espacial sin un servidor.

Ventajas:

  • Ligero y fácil de usar. No requiere instalación de servidores o configuraciones complejas.
  • Gran compatibilidad con QGIS para gestionar y analizar datos espaciales.
  • Totalmente autónomo, todo se almacena en un solo archivo (.sqlite o .db).

Desventajas:

  • No es tan adecuado para proyectos grandes o donde varios usuarios necesitan acceder simultáneamente a los datos.
  • Tiene limitaciones en términos de rendimiento comparado con PostGIS cuando se trata de grandes volúmenes de datos.

3. GeoPackage

GeoPackage es un formato de almacenamiento de datos espaciales basado en SQLite que fue desarrollado como un estándar abierto por el OGC (Open Geospatial Consortium). A diferencia de SpatiaLite, que es una extensión de SQLite, GeoPackage es un formato en sí mismo, diseñado específicamente para almacenar información geográfica y atributos asociados.

Características principales:

  • Estandarizado: Es un estándar abierto, lo que garantiza la interoperabilidad entre diferentes sistemas y herramientas GIS.
  • Portátil: Al igual que SpatiaLite, es un archivo único (.gpkg) que puede contener múltiples capas geoespaciales, tanto vectoriales como ráster.
  • Soporte completo para datos espaciales: Almacena puntos, líneas, polígonos y datos ráster dentro del mismo archivo.
  • Compacto: Los archivos GeoPackage están optimizados para ser pequeños en tamaño, lo que los hace ideales para compartir y transferir.
  • Funcionalidades avanzadas: Además de almacenar geometrías y datos ráster, un archivo GeoPackage puede contener metadatos, tablas de atributos y otros tipos de información geoespacial.

Uso típico:

  • Intercambio de datos geoespaciales: Ideal para compartir datos entre diferentes sistemas GIS o entre diferentes usuarios. Muchas organizaciones y agencias utilizan GeoPackage como su formato estándar para compartir datos geográficos.
  • Proyectos en campo: Debido a su portabilidad, se utiliza comúnmente en aplicaciones móviles y dispositivos en campo, donde es útil tener toda la información geoespacial en un solo archivo.

Ventajas:

  • Estandarizado y ampliamente compatible con varias herramientas GIS.
  • Puede almacenar múltiples capas de datos (vectoriales y ráster) en un solo archivo.
  • Soporta datos espaciales y atributos en el mismo archivo.
  • Ideal para proyectos que requieren compartir y transferir datos.

Desventajas:

  • No es tan escalable para proyectos de gran tamaño como PostGIS.
  • Aunque es adecuado para múltiples capas, puede ser menos eficiente que una base de datos espacial completa para el manejo de grandes volúmenes de datos con múltiples usuarios.

4. Oracle Spatial

Oracle Spatial es una opción de la base de datos Oracle que permite almacenar y gestionar datos espaciales. Es una solución robusta y escalable para el almacenamiento y análisis de datos geoespaciales dentro del sistema de gestión de bases de datos Oracle.

Características principales:

  • Datos espaciales integrados en Oracle: Oracle Spatial añade soporte para tipos de datos geográficos dentro de la base de datos Oracle, lo que permite realizar consultas espaciales y análisis geoespaciales de manera eficiente.
  • Funciones espaciales avanzadas: Proporciona funciones similares a PostGIS, como cálculos de distancia, área, intersección, buffers, etc.
  • Soporte para grandes volúmenes de datos: Es altamente escalable y está diseñado para manejar grandes cantidades de datos espaciales, lo que lo hace ideal para proyectos de gran escala y entornos empresariales.
  • Consultas SQL espaciales: Permite realizar consultas geoespaciales utilizando el lenguaje SQL.

Uso típico:

  • Grandes organizaciones y gobiernos que ya usan Oracle como su base de datos principal y necesitan agregar funcionalidad espacial.
  • Proyectos empresariales de gran escala donde es necesario gestionar datos espaciales dentro de una infraestructura de base de datos existente.

Ventajas:

  • Totalmente integrado en la base de datos Oracle, lo que proporciona robustez y escalabilidad.
  • Adecuado para proyectos muy grandes con altos requerimientos de rendimiento.
  • Amplio soporte para funciones geoespaciales.

Desventajas:

  • Costoso: Oracle es un software de base de datos propietario, y las licencias para Oracle Spatial pueden ser costosas.
  • Requiere administración y configuración avanzada.
  • Menos accesible para pequeños proyectos o usuarios individuales, debido a su costo y complejidad.

Resumen Comparativo

Base de DatosTipoEscalabilidadComplejidad de ConfiguraciónPortabilidadIdeal Para
PostGISCliente-Servidor (PostgreSQL)AltaMedia a altaBajaProyectos grandes, multiusuario, análisis avanzado.
SpatiaLiteArchivo local (SQLite)MediaBajaAltaProyectos pequeños o medianos, portabilidad.
GeoPackageArchivo local (SQLite)MediaBajaAltaIntercambio de datos, portabilidad, múltiples capas.
Oracle SpatialCliente-Servidor (Oracle)Muy altaAltaBajaGrandes proyectos empresariales y gubernamentales.

Cada una de estas opciones tiene ventajas específicas, dependiendo de las necesidades de tu proyecto. PostGIS es ideal para proyectos de gran escala y colaboración, SpatiaLite y GeoPackage son perfectos para proyectos más pequeños o portátiles, y Oracle Spatial es para organizaciones que ya utilizan Oracle como base de datos principal.


En el apartado de "Navegador" seleccionamos nuestro provedor de base de datos, da click derecho y "Conexion Nueva..."



El cuadro de diálogo de "Nueva conexión a PostGIS" en QGIS es la interfaz que te permite establecer una conexión con una base de datos PostGIS. Aquí puedes introducir toda la información necesaria para acceder y trabajar con los datos espaciales almacenados en una base de datos PostgreSQL con la extensión PostGIS.

A continuación, te explico cada campo que aparece en el cuadro de diálogo:

1. Nombre de la conexión

  • Descripción: Es un nombre que le asignas a la conexión, para identificarla fácilmente más tarde dentro de QGIS. Puede ser cualquier nombre que te ayude a recordar la conexión, como "PostGIS_local" o "Base_datos_proyecto".
  • Ejemplo: Conexión_PostGIS_local.

2. Host

  • Descripción: Es la dirección del servidor donde está alojada la base de datos PostgreSQL/PostGIS. Puede ser una dirección IP, un nombre de dominio (si está alojado en un servidor remoto) o localhost si la base de datos está en tu propio ordenador.
  • Ejemplo: localhost o 192.168.1.100.

3. Puerto

  • Descripción: Es el puerto a través del cual se comunica PostgreSQL. Por defecto, PostgreSQL usa el puerto 5432, pero puede ser diferente si tu administrador de base de datos lo ha configurado de otra manera.
  • Ejemplo: 5432.

4. Base de datos

  • Descripción: Aquí indicas el nombre de la base de datos específica de PostgreSQL a la que te deseas conectar. Debe ser el nombre exacto de la base de datos que contiene los datos espaciales en formato PostGIS.
  • Ejemplo: proyecto_sig.

5. Usuario

  • Descripción: Es el nombre de usuario que tiene acceso a la base de datos. Este usuario debe tener permisos para acceder y realizar consultas sobre las tablas de datos espaciales.
  • Ejemplo: admin_postgis.

6. Contraseña

  • Descripción: La contraseña asociada al usuario que has introducido. Esto garantiza que solo las personas con credenciales correctas puedan acceder a la base de datos.
  • Ejemplo: mi_contraseña_secreta.

7. Almacenar contraseña (opcional)

  • Descripción: Si marcas esta casilla, QGIS guardará tu contraseña para futuras conexiones automáticas sin necesidad de introducirla cada vez que quieras acceder a la base de datos. Por motivos de seguridad, considera si es conveniente almacenar la contraseña.

8. SSL Mode (Modo SSL)

  • Descripción: Esta opción te permite especificar si quieres usar una conexión segura entre QGIS y la base de datos usando SSL (Secure Sockets Layer). Tienes las siguientes opciones:
    • prefer: Utiliza SSL si está disponible, pero no es obligatorio.
    • require: Exige una conexión SSL segura.
    • disable: No utiliza SSL.
  • Ejemplo: Si el servidor está configurado para aceptar conexiones seguras, puedes elegir require.

9. Guardar sesión (opcional)

  • Descripción: Al activar esta opción, QGIS mantendrá la sesión abierta para no pedir credenciales en cada conexión durante la misma sesión de QGIS.

10. Permitir edición en tablas sin clave primaria

  • Descripción: Algunas tablas pueden no tener una clave primaria definida, lo que puede dificultar la edición. Si marcas esta opción, QGIS permitirá la edición de estas tablas de todos modos. Sin embargo, es recomendable que las tablas tengan una clave primaria para evitar problemas en la edición.

11. Cargar todas las tablas

  • Descripción: Si activas esta casilla, QGIS cargará todas las tablas de la base de datos, incluso aquellas que no contienen geometría espacial. Esto puede ser útil si estás interesado en trabajar con datos alfanuméricos o de atributos que no tienen una componente geoespacial.

12. Sólo tablas con geometría

  • Descripción: Si marcas esta opción, QGIS solo cargará las tablas que contienen datos geoespaciales (es decir, tablas con geometría). Esto puede ser útil si solo te interesa trabajar con los datos espaciales de la base de datos y no con las tablas de atributos.

13. Botón "Probar conexión"

  • Descripción: Una vez que hayas introducido toda la información, puedes hacer clic en este botón para probar si la conexión es exitosa. Esto te permite verificar que los detalles son correctos antes de intentar agregar capas al proyecto QGIS.

14. Botones "Aceptar" y "Cancelar"

  • Aceptar: Guarda la conexión y te permite empezar a usarla en el proyecto QGIS.
  • Cancelar: Cierra el cuadro de diálogo sin guardar los cambios.

Cuando se tiene la conexion exitosa se vera de esta forma:


en la conexion de la base podemos tener acceso a las tablas y campos 

posteriormente de tener visible las tablas podemos realizar nuestras consultas y visualizarlas como capas en nuestro mapa con la "Ventana SQL".



asi se presenta la capa.


en caso de ver toda la capa solo arastra la tabla a el apartado "Capa".