23.1.2. Base de datos

23.1.2.1. Exportar a PostgreSQL

Exporta una capa vectorial a una base de datos PostgreSQL, creando una nueva relación. Si existe una relación con el mismo nombre, se puede eliminar antes de que se cree la nueva relación. Antes de esto, se debe crear una conexión entre QGIS y la base de datos PostgreSQL (ver por ejemplo Crear una conexión almacenada).

23.1.2.1.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Capa a importar

INPUT

[vector: cualquiera]

Capa vectorial a añadir a la base de datos

Base de datos (nombre de conexión)

DATABASE

[string]

Nombre de la conexión a la base de datos (no el nombre de la base de datos). Las conexiones existentes se mostrarán en el cuadro combinado.

Esquema (nombre de esquema)

Opcional

SCHEMA

[string]

Predeterminado: “public”

Nombre del esquema para almacenar los datos. Puede ser uno nuevo o ya existir.

Tabla a la que importar (dejar en blanco para usar el nombre de la capa)

Opcional

TABLENAME

[string]

Predeterminado: “”

Define un nombre de tabla para el archivo vectorial importado. Si no se agrega nada, se utilizará el nombre de la capa.

Clave primaria de campo

Opcional

PRIMARY_KEY

[tablefield: cualquier]

Establece el campo de clave principal de un campo existente en la capa vectorial. Una columna con valores únicos se puede utilizar como clave principal para la base de datos.

Columna geometría

GEOMETRY_COLUMN

[string]

Predeterminado: “geom”

Define el nombre de la columna de geometría en la nueva tabla PostGIS. La información de geometría de las características se almacena en esta columna.

Codificación

Opcional

ENCODING

[string]

Predeterminado: “UTF-8”

Define la codificación de la capa de salida.

Sobreescribir

OVERWRITE

[boolean]

Predeterminado: Verdadero

Si la tabla especificada existe, establecer esta opción en True garantizará que se elimine y se creará una nueva tabla antes de agregar las características. Si esta opción es False y la tabla existe, el algoritmo lanzará una excepción («la relación ya existe»).

Crear índice espacial

CREATEINDEX

[boolean]

Predeterminado: Verdadero

Especifica si crear un índice espacial o no

Convertir nombre de campos a minúsculas

LOWERCASE_NAMES

[boolean]

Predeterminado: Verdadero

Convierte los nombres de campo de la capa de vector de entrada a minúsculas

Restricción de longitud de cadena en campos de caracteres

DROP_STRING_LENGTH

[boolean]

Predeterminado: False

Si deben eliminarse o no las restricciones de longitud en los campos de caracteres

Crear geometrías de una sola pieza en lugar de varias piezas

FORCE_SINGLEPART

[boolean]

Predeterminado: False

Si deben las entidades de la capa de salida ser de una sola parte en lugar de varias partes. De forma predeterminada, se conserva la información de geometrías existentes.

23.1.2.1.2. Salidas

El algoritmo no tiene salida.

23.1.2.1.3. Código Python

Algorithm ID: qgis:importintopostgis

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.

23.1.2.2. Exportar a SpatiaLite

Exporta una capa vectorial a una base de datos SpatiaLite. Antes de esto, se debe crear una conexión entre QGIS y la base de datos SpatiaLite (ver eg Capas SpatiaLite).

23.1.2.2.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Capa a importar

INPUT

[vector: cualquiera]

Capa vectorial a añadir a la base de datos

Base de datos de archivos

DATABASE

[vector: cualquiera]

La base de datos de archivos SQLite/SpatiaLite a la que conectar

Tabla a la que importar (dejar en blanco para usar el nombre de la capa)

Opcional

TABLENAME

[string]

Predeterminado: “”

Define el nombre de la tabla para el archivo vectorial importado. Si no se especifica nada, se utilizará el nombre de la capa.

Clave primaria de campo

Opcional

PRIMARY_KEY

[tablefield: cualquier]

Utilizar un campo en la capa vectorial de entrada como clave principal

Columna geometría

GEOMETRY_COLUMN

[string]

Predeterminado: “geom”

Define el nombre de la columna de geometría en la nueva tabla SpatiaLite. La información de geometría de las entidades se almacena en esta columna.

Codificación

Opcional

ENCODING

[string]

Predeterminado: “UTF-8”

Define la codificación de la capa de salida.

Sobreescribir

OVERWRITE

[boolean]

Predeterminado: Verdadero

Si la tabla especificada existe, establecer esta opción en True asegurará que se elimine y se creará una nueva tabla antes de agregar las entidades de la capa. Si esta opción es False y la tabla existe, el algoritmo lanzará una excepción («la tabla ya existe»).

Crear índice espacial

CREATEINDEX

[boolean]

Predeterminado: Verdadero

Especifica si crear un índice espacial o no

Convertir nombre de campos a minúsculas

LOWERCASE_NAMES

[boolean]

Predeterminado: Verdadero

Convertir los nombres de campo de la capa vectorial entrante a minúsculas

Restricción de longitud de cadena en campos de caracteres

DROP_STRING_LENGTH

[boolean]

Predeterminado: False

Si deben eliminarse o no las restricciones de longitud en los campos de caracteres

Crear geometrías de una sola pieza en lugar de varias piezas

FORCE_SINGLEPART

[boolean]

Predeterminado: False

Si deben las entidades de la capa de salida ser de una sola parte en lugar de varias partes. De forma predeterminada, se conserva la información de geometrías existentes.

23.1.2.2.2. Salidas

El algoritmo no tiene salida.

23.1.2.2.3. Código Python

Algorithm ID: qgis:importintospatialite

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.

23.1.2.3. Paquete de capas

Añade capas a un GeoPackage.

Si el GeoPackage existe y «Sobrescribir GeoPackage existente» está marcado, se sobrescribirá (se eliminará y se volverá a crear). Si el GeoPackage existe y «Sobrescribir GeoPackage existente» no está marcado, la capa se agregará.

23.1.2.3.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Capas de entrada

LAYERS

[vector: any] [list]

Las capas (vectoriales) a importar al GeoPackage. Las capas ráster no son compatibles. Si se agrega una capa ráster, se lanzará QgsProcessingException.

Sobreescribir GeoPackage existente

OVERWRITE

[boolean]

Predeterminado: False

Si existe el GeoPackage especificado, configurar esta opción en True asegurará que se elimine y se creará uno nuevo antes de agregar las capas. Si se establece en True, se agregarán capas.

Guardar estilos de capa en GeoPackage

SAVE_STYLES

[boolean]

Predeterminado: Verdadero

Guarda el estilo de capa

GeoPackage destinatario

OUTPUT

[file]

Si no se especifica, el GeoPackage se guardará en la carpeta temporal.

23.1.2.3.2. Salidas

Etiqueta

Nombre

Tipo

Descripción

Capas dentro de nuevo paquete

OUTPUT_LAYERS

[string] [list]

La lista de capas añadidas al GeoPackage.

23.1.2.3.3. Código Python

Algorithm ID: qgis:package

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.

23.1.2.4. PostgreSQL ejecuta y carga SQL

Permite realizar una consulta de base de datos SQL en una base de datos PostgreSQL conectada a QGIS y carga el resultado. El algoritmo no creará una nueva capa: está diseñado para ejecutar consultas en la propia capa.

Ejemplo

  1. Establecer todos los valores de un campo existente en un valor fijo. La cadena de consulta SQL será:

    UPDATE your_table SET field_to_update=20;
    

    En el ejemplo anterior, los valores del campo field_to_update de la tabla your_table estarán todos configurados en 20.

  2. Cree una nueva columna``área`` y calcule el área de cada entidad con la función PostGIS ST_AREA.

    -- Create the new column "area" on the table your_table"
    ALTER TABLE your_table ADD COLUMN area double precision;
    -- Update the "area" column and calculate the area of each feature:
    UPDATE your_table SET area=ST_AREA(geom);
    

23.1.2.4.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Base de datos (nombre de conexión)

DATABASE

[string]

La conexión de la base de datos (no el nombre de la base de datos). Las conexiones existentes se mostrarán en el cuadro combinado.

**Consulta SQL*

SQL

[string]

Define la consulta SQL, por ejemplo 'UPDATE my_table SET field=10'.

ID única de nombre de campo

ID_FIELD

[string]

Predeterminado: id

Establece el campo de clave principal (una columna en la tabla de resultados)

Nombre de campo de Geometría

Opcional

GEOMETRY_FIELD

[string]

Predeterminado: “geom”

Nombre de la columna de geometría (una columna en la tabla de resultados)

23.1.2.4.2. Salidas

Etiqueta

Nombre

Tipo

Descripción

Consulta SQL

OUTPUT

[vector: cualquiera]

La capa vectorial resultante se cargará en QGIS.

23.1.2.4.3. Código Python

Algorithm ID: qgis:postgisexecuteandloadsql

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.

23.1.2.5. PostgreSQL ejecuta SQL

Permite realizar una consulta de base de datos SQL en una base de datos PostgreSQL conectada a QGIS. El algoritmo won`t creará una nueva capa: está diseñado para ejecutar consultas en la propia capa.

Ejemplo

  1. Establecer todos los valores de un campo existente en un valor fijo. La cadena de consulta SQL será:

    UPDATE your_table SET field_to_update=20;
    

    En el ejemplo anterior, los valores del campo field_to_update de la tabla your_table estarán todos configurados en 20.

  2. Cree una nueva columna``área`` y calcule el área de cada entidad con la función PostGIS ST_AREA.

    -- Create the new column "area" on the table your_table"
    ALTER TABLE your_table ADD COLUMN area double precision;
    -- Update the "area" column and calculate the area of each feature:
    UPDATE your_table SET area=ST_AREA(geom);
    

23.1.2.5.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Base de datos (nombre de conexión)

DATABASE

[string]

La conexión de la base de datos (no el nombre de la base de datos). Las conexiones existentes se mostrarán en el cuadro combinado.

**Consulta SQL*

SQL

[string]

Define la consulta SQL, por ejemplo 'UPDATE my_table SET field=10'.

23.1.2.5.2. Salidas

No se crea ninguna salida. La consulta SQL se ejecuta en su lugar.

23.1.2.5.3. Código Python

Algorithm ID: qgis:postgisexecutesql

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.

23.1.2.6. SpatiaLite ejecuta SQL

Permite realizar una consulta de base de datos SQL en una base de datos SpatiaLite conectada a QGIS. El algoritmo no creará una nueva capa: está diseñado para ejecutar consultas en la propia capa.

Ver también

PostgreSQL ejecuta SQL, Ejecutar SQL

Para algunos ejemplos de consultas SQL ver PostGIS SQL Query Examples.

23.1.2.6.1. Parametros

Etiqueta

Nombre

Tipo

Descripción

Base de Datos de archivos

DATABASE

[vector]

Predeterminado: no configurada

La base de datos de archivos SQLite/SpatiaLite a la que conectar

**Consulta SQL*

SQL

[string]

Predeterminado: “”

Define la consulta SQL, por ejemplo 'UPDATE my_table SET field=10'.

23.1.2.6.2. Salidas

No se crea ninguna salida. La consulta SQL se ejecuta en su lugar.

23.1.2.6.3. Código Python

Algorithm ID: qgis:spatialiteexecutesql

import processing
processing.run("algorithm_id", {parameter_dictionary})

El algoritmo id se muestra cuando pasa el cursor sobre el algoritmo en la caja de herramientas de procesos. El diccionario de parámetros proporciona los NOMBRES y valores de los parámetros. Consulte Utilizar algoritmos de procesamiento desde la consola para obtener detalles sobre cómo ejecutar algoritmos de procesamiento desde la consola de Python.