27.1.2. Base de données
27.1.2.1. Exporter vers PostgreSQL
Exporte une couche vectorielle vers une base de données PostgreSQL, créant une nouvelle relation. Si une relation du même nom existe, elle peut être supprimée avant la création de la nouvelle relation. Avant cela, une connexion entre QGIS et la base de données PostgreSQL doit être créée (voir par exemple Créer une connexion à enregistrer).
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Couche à importer |
|
[vecteur : tout type] |
Couche vectorielle à ajouter à la base de données |
Base de données (nom de la connexion) |
|
[Chaîne de caractères] |
Nom de la connexion à la base de données (pas le nom de la base de données). Les connexions existantes seront affichées dans la zone de liste déroulante. |
Schéma (nom du schéma) Optionnel |
|
[Chaîne de caractères] Par défaut : “public” |
Nom du schéma pour stocker les données. Il peut être nouveau ou déjà exister. |
Table vers laquelle importer (laisser vide pour utiliser le nom de la couche) Optionnel |
|
[Chaîne de caractères] Par défaut : “” |
Définit un nom de table pour le fichier vectoriel importé. Si rien n’est spécifié, le nom de la couche sera utilisé. |
Champ de clé primaire Optionnel |
|
[champ : tout type] |
Définit le champ de clé primaire à partir d’un champ existant dans la couche vectorielle. Une colonne avec des valeurs uniques peut être utilisée comme clé primaire pour la base de données. |
Colonne de géométrie |
|
[Chaîne de caractères] Par défaut : “geom” |
Définit le nom de la colonne géométrique dans la nouvelle table PostGIS. L’information géométrique des entités est enregistrée dans cette colonne. |
Encodage Optionnel |
|
[Chaîne de caractères] Par défaut : “UTF-8” |
Définit l’encodage de la couche de sortie |
Écraser |
|
[booléen] Par défaut : Vrai |
Si la table spécifiée existe, la définition de cette option sur |
Créer un index spatial |
|
[booléen] Par défaut : Vrai |
Spécifie s’il faut créer un index spatial ou non |
Convertir les noms de champs en minuscules |
|
[booléen] Par défaut : Vrai |
Convertit les noms de champ de la couche vectorielle d’entrée en minuscules |
Drop length constraint on character fields |
|
[booléen] Par défaut : Faux |
Should length constraints on character fields be dropped or not |
Create single-part geometries instead of multi-part |
|
[booléen] Par défaut : Faux |
Should the features of the output layer be single-part instead of multi-part. By default the existing geometries information are preserved. |
Outputs
The algorithm has no output.
Code Python
ID de l’algorithme : qgis:importintopostgis
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.2. Export to SpatiaLite
Exports a vector layer to a SpatiaLite database. Prior to this a connection between QGIS and the SpatiaLite database has to be created (see eg Couches SpatiaLite).
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Couche à importer |
|
[vecteur : tout type] |
Couche vectorielle à ajouter à la base de données |
File database |
|
[vecteur : tout type] |
The SQLite/SpatiaLite database file to connect to |
Table vers laquelle importer (laisser vide pour utiliser le nom de la couche) Optionnel |
|
[Chaîne de caractères] Par défaut : “” |
Defines the table name for the imported vector file. If nothing is specified, the layer name will be used. |
Champ de clé primaire Optionnel |
|
[champ : tout type] |
Use a field in the input vector layer as the primary key |
Colonne de géométrie |
|
[Chaîne de caractères] Par défaut : “geom” |
Defines the name of the geometry column in the new SpatiaLite table. Geometry information for the features is stored in this column. |
Encodage Optionnel |
|
[Chaîne de caractères] Par défaut : “UTF-8” |
Définit l’encodage de la couche de sortie |
Écraser |
|
[booléen] Par défaut : Vrai |
If the specified table exists, setting this option to
|
Créer un index spatial |
|
[booléen] Par défaut : Vrai |
Spécifie s’il faut créer un index spatial ou non |
Convertir les noms de champs en minuscules |
|
[booléen] Par défaut : Vrai |
Convert the field names of the input vector layer to lowercase |
Drop length constraint on character fields |
|
[booléen] Par défaut : Faux |
Should length constraints on character fields be dropped or not |
Create single-part geometries instead of multi-part |
|
[booléen] Par défaut : Faux |
Should the features of the output layer be single-part instead of multi-part. By default the existing geometries information are preserved. |
Outputs
The algorithm has no output.
Code Python
Algorithm ID: qgis:importintospatialite
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.3. Package layers
Adds layers to a GeoPackage.
If the GeoPackage exists and Overwrite existing GeoPackage
is checked, it will be overwritten (removed and recreated).
If the GeoPackage exists and Overwrite existing GeoPackage
is not checked, the layer will be appended.
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Input layers |
|
[vector: any] [list] |
The (vector) layers to import into the GeoPackage.
Raster layers are not supported. If a raster layer is
added, a
|
Overwrite existing GeoPackage |
|
[booléen] Par défaut : Faux |
If the specified GeoPackage exists, setting this option to
|
Save layer styles into GeoPackage |
|
[booléen] Par défaut : Vrai |
Save the layer styles |
Save only selected features |
|
[booléen] Par défaut : Faux |
If a layer has a selection, setting this option to |
Exporter les couches liées par les relations définies dans le projet
|
|
[booléen] Par défaut : Faux |
Lorsqu’une couche en entrée a des relations définies dans le projet, mettre cette option à |
Destination GeoPackage |
|
[file] Par défaut : |
Specify where to store the GeoPackage file. One of
|
Outputs
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Layers within new package |
|
[string] [list] |
The list of layers added to the GeoPackage. |
Code Python
Algorithm ID: native:package
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.4. PostgreSQL execute and load SQL
Permet d’effectuer une requête de base de données SQL sur une base de données PostgreSQL connectée à QGIS et de charger le résultat. L’algorithme ne va pas créer une nouvelle couche : il est conçu pour exécuter des requêtes sur la couche elle-même.
Exemple
Définissez toutes les valeurs d’un champ existant sur une valeur fixe. La chaîne de requête SQL sera:
UPDATE your_table SET field_to_update=20;
Dans l’exemple ci-dessus, les valeurs du champ
field_to_update
de la tableyour_table
seront toutes définies sur20
.Créez une nouvelle colonne
surface
et calculez la surface de chaque entité avec la fonction PostGISST_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);
Voir aussi
PostgreSQL execute SQL, Exécuter SQL, SpatiaLite execute SQL
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Base de données (nom de la connexion) |
|
[Chaîne de caractères] |
La connexion à la base de données (pas le nom de la base de données). Les connexions existantes seront affichées dans la zone de liste déroulante. |
Requête SQL |
|
[Chaîne de caractères] |
Defines the SQL query, for example
|
Unique ID field name |
|
[Chaîne de caractères] Par défaut : id |
Sets the primary key field (a column in the result table) |
Geometry field name Optionnel |
|
[Chaîne de caractères] Par défaut : “geom” |
Name of the geometry column (a column in the result table) |
Outputs
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
SQL layer |
|
[vecteur : tout type] |
The resulting vector layer to be loaded into QGIS. |
Code Python
Algorithm ID: qgis:postgisexecuteandloadsql
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.5. PostgreSQL execute SQL
Allows a SQL database query to be performed on a PostgreSQL database connected to QGIS. The algorithm won’t create a new layer: it is designed to run queries on the layer itself.
Exemple
Définissez toutes les valeurs d’un champ existant sur une valeur fixe. La chaîne de requête SQL sera:
UPDATE your_table SET field_to_update=20;
Dans l’exemple ci-dessus, les valeurs du champ
field_to_update
de la tableyour_table
seront toutes définies sur20
.Créez une nouvelle colonne
surface
et calculez la surface de chaque entité avec la fonction PostGISST_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);
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Base de données (nom de la connexion) |
|
[Chaîne de caractères] |
La connexion à la base de données (pas le nom de la base de données). Les connexions existantes seront affichées dans la zone de liste déroulante. |
Requête SQL |
|
[Chaîne de caractères] |
Defines the SQL query, for example
|
Outputs
No output is created. The SQL query is executed in place.
Code Python
ID de l’algorithme : native:postgisexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.6. SpatiaLite execute SQL
Allows a SQL database query to be performed on a SpatiaLite database. The algorithm won’t create a new layer: it is designed to run queries on the layer itself.
Voir aussi
PostgreSQL execute SQL, Exécuter SQL
For some SQL query examples see PostGIS SQL Query Examples.
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
File Database |
|
[vecteur] |
The SQLite/SpatiaLite database file to connect to |
Requête SQL |
|
[Chaîne de caractères] Par défaut : “” |
Defines the SQL query, for example
|
Outputs
No output is created. The SQL query is executed in place.
Code Python
ID de l’algorithme : native:spatialiteexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.
27.1.2.7. SpatiaLite execute SQL (registered DB)
Allows a SQL database query to be performed on a SpatiaLite database connected to QGIS. The algorithm won’t create a new layer: it is designed to run queries on the layer itself.
Voir aussi
PostgreSQL execute SQL, Exécuter SQL
For some SQL query examples see PostGIS SQL Query Examples.
Paramètres
Étiquette |
Nom |
Type |
Description |
---|---|---|---|
Base de données |
|
[énumeration] Par défaut : Non défini |
Select a SQLite/SpatiaLite database connected to the current session |
Requête SQL |
|
[Chaîne de caractères] Par défaut : “” |
Defines the SQL query, for example
|
Outputs
No output is created. The SQL query is executed in place.
Code Python
Algorithm ID: native:spatialiteexecutesqlregistered
import processing
processing.run("algorithm_id", {parameter_dictionary})
The algorithm id is displayed when you hover over the algorithm in the Processing Toolbox. The parameter dictionary provides the parameter NAMEs and values. See Utiliser les algorithmes du module de traitements depuis la console Python for details on how to run processing algorithms from the Python console.