24.1.2. Database
24.1.2.1. Naar PostgreSQL exporteren
Exporteert een vectorlaag naar een database van PostgreSQL en maakt een nieuwe relatie. Als er al een relatie met dezelfde naam bestaat, kan die worden verwijderd voordat de nieuwe relatie wordt gemaakt. Hiervóór dient een verbinding te worden gemaakt tussen QGIS en de database van PostgreSQL (zie bijv. Een opgeslagen verbinding maken).
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
**Laag om te importeren* |
|
[vector: elke] |
Aan de database toe te voegen vectorlaag |
Database (naam verbinding) |
|
[tekenreeks] |
Naam van de verbinding van de database (niet de naam van de database). Bestaande verbindingen zullen worden weergegeven in het combinatievak. |
Schema (naam schema) Optioneel |
|
[tekenreeks] Standaard: ‘public’ |
Naam van het schema waarin de gegevens moeten worden opgeslagen. Het mag een nieuw zijn of een reeds bestaand. |
Tabel om naar te importeren (laat leeg om laagnaam te gebruiken) Optioneel |
|
[tekenreeks] Standaard: ‘’ |
Definieert een tabelnaam voor het geïmporteerde vectorbestand. Als niets wordt toegevoegd zal de laagnaam worden gebruikt. |
Veld Primaire sleutel Optioneel |
|
[tabelveld: elk] |
Stelt het veld voor de Primaire sleutel in vanuit een bestaand veld in de vectorlaag. Een kolom met unieke waarden kan als primaire sleutel voor de database worden gebruikt. |
Geometriekolom |
|
[tekenreeks] Standaard: ‘geom’ |
Definieert de naam van de geometriekolom in de nieuwe tabel van PostGIS. Informatie over de geometrie voor de objecten is in deze kolom opgeslagen. |
Codering Optioneel |
|
[tekenreeks] Standaard: ‘UTF-8’ |
Definieert de codering voor de uitvoerlaag |
Overschrijven |
|
[Booleaanse waarde] Standaard: True |
Als de gespecificeerde tabel bestaat, zal het instellen van deze optie op |
Ruimtelijke index maken |
|
[Booleaanse waarde] Standaard: True |
Specificeert of een ruimtelijke index moet worden gemaakt of niet |
Veldnamen naar kleine letters converteren |
|
[Booleaanse waarde] Standaard: True |
Converteert de veldnamen van de invoer vectorlaag naar kleine letters |
Beperkingen voor lengte op velden voor tekens verwijderen |
|
[Booleaanse waarde] Standaard: False |
Of de beperkingen van lengten voor velden met tekens moeten worden verwijderd of niet |
Enkeldelige geometrieën maken in plaats van meerdelige |
|
[Booleaanse waarde] Standaard: False |
Of de objecten van de geladen laag een enkel deel zouden moeten zijn in plaats van meerdere delen. Standaard wordt de bestaande informatie voor geometrieën behouden. |
Uitvoer
Het algoritme heeft geen uitvoer.
Pythoncode
ID algoritme: qgis:importintopostgis
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.2. Naar SpatiaLite exporteren
Exporteert een vectorlaag naar een database van SpatiaLite. Hiervóór dient een verbinding te worden gemaakt tussen QGIS en de database van SpatiaLite (zie bijv. SpatiaLite-lagen).
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
**Laag om te importeren* |
|
[vector: elke] |
Aan de database toe te voegen vectorlaag |
Bestandsdatabase |
|
[vector: elke] |
De database van SQLite/SpatiaLite waarmee moet worden verbonden |
Tabel om naar te importeren (laat leeg om laagnaam te gebruiken) Optioneel |
|
[tekenreeks] Standaard: ‘’ |
Definieert een tabelnaam voor het geïmporteerde vectorbestand. Als niets wordt gespecificeerd zal de laagnaam worden gebruikt. |
Veld Primaire sleutel Optioneel |
|
[tabelveld: elk] |
Gebruik een veld in de invoer vectorlaag als de primaire sleutel |
Geometriekolom |
|
[tekenreeks] Standaard: ‘geom’ |
Definieert de naam van de geometriekolom in de nieuwe tabel van SpatiaLite. Informatie over de geometrie voor de objecten is in deze kolom opgeslagen. |
Codering Optioneel |
|
[tekenreeks] Standaard: ‘UTF-8’ |
Definieert de codering voor de uitvoerlaag |
Overschrijven |
|
[Booleaanse waarde] Standaard: True |
Als de gespecificeerde tabel bestaat, zal het instellen van deze optie op |
Ruimtelijke index maken |
|
[Booleaanse waarde] Standaard: True |
Specificeert of een ruimtelijke index moet worden gemaakt of niet |
Veldnamen naar kleine letters converteren |
|
[Booleaanse waarde] Standaard: True |
Converteer de veldnamen van de invoer vectorlaag naar kleine letters |
Beperkingen voor lengte op velden voor tekens verwijderen |
|
[Booleaanse waarde] Standaard: False |
Of de beperkingen van lengten voor velden met tekens moeten worden verwijderd of niet |
Enkeldelige geometrieën maken in plaats van meerdelige |
|
[Booleaanse waarde] Standaard: False |
Of de objecten van de geladen laag een enkel deel zouden moeten zijn in plaats van meerdere delen. Standaard wordt de bestaande informatie voor geometrieën behouden. |
Uitvoer
Het algoritme heeft geen uitvoer.
Pythoncode
ID algoritme: qgis:importintospatialite
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.3. Pakketlagen
Lagen toevoegen aan een GeoPackage.
Als het GeoPackage bestaat en Bestaand GeoPackage overschrijven
is geselecteerd, zal het worden overschreven (verwijderd en opnieuw gemaakt). Als het GeoPackage bestaat en Bestaand GeoPackage overschrijven
is niet geselecteerd, zal de laag worden toegevoegd.
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Invoerlagen |
|
[vector: elke][lijst] |
De (vector)lagen die moeten worden geïmporteerd in het GeoPackage. Rasterlagen worden niet ondersteund. Als een rasterlaag wordt toegevoegd, zal een |
Bestaande GeoPackage overschrijven |
|
[Booleaanse waarde] Standaard: False |
Als het gespecificeerde GeoPackage bestaat, zal het instellen van deze optie op |
Laagstijlen opslaan in GeoPackage |
|
[Booleaanse waarde] Standaard: True |
Sla de laagstijlen op |
Doel GeoPackage |
|
[bestand] Standaard: |
Specificeer waar het bestand GeoPackage moet worden opgeslagen. Één van
|
Uitvoer
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Lagen in nieuwe pakket |
|
[tekenreeks] [lijst] |
Lijst met toegevoegde lagen aan het GeoPackage. |
Pythoncode
ID algoritme: native:package
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.4. PostgreSQL uitvoeren en SQL laden
Maakt het mogelijk dat een query voor een database van SQL wordt uitgevoerd op een database van PostgreSQL die is verbonden met QGIS en laadt het resultaat. Het algoritme zal geen nieuwe laag maken: het is ontworpen om query’s op de laag zelf uit te voeren.
Voorbeeld
Stel alle waarden van een bestaand veld in op een vaste waarde. De tekenreeks voor de query van SQL is dan:
UPDATE your_table SET field_to_update=20;
In het voorbeeld hierboven zullen de waarden van het veld
field_to_update
van de tabelyour_table
allemaal worden ingesteld op20
.Maak een nieuwe kolom
area
en bereken het gebied van elk object met de functie van 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);
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Database (naam verbinding) |
|
[tekenreeks] |
De verbinding van de database (niet de naam van de database). Bestaande verbindingen zullen worden weergegeven in het combinatievak. |
SQL-query |
|
[tekenreeks] |
Definieert de query voor SQL, bijvoorbeeld |
Naam unieke ID-veld |
|
[tekenreeks] Standaard: id |
Stelt het veld voor de Primaire sleutel in (een kolom in de tabel met resultaten) |
Naam geometrieveld Optioneel |
|
[tekenreeks] Standaard: ‘geom’ |
Naam van de geometriekolom (een kolom in de tabel met resultaten) |
Uitvoer
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
SQL-laag |
|
[vector: elke] |
De resulterende vectorlaag die moet worden geladen QGIS. |
Pythoncode
ID algoritme: qgis:postgisexecuteandloadsql
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.5. PostgreSQL SQL uitvoeren
Maakt het mogelijk dat een query voor een database van SQL wordt uitgevoerd op een database van PostgreSQL die is verbonden met QGIS. Het algoritme zal geen nieuwe laag maken: het is ontworpen om query’s op de laag zelf uit te voeren.
Voorbeeld
Stel alle waarden van een bestaand veld in op een vaste waarde. De tekenreeks voor de query van SQL is dan:
UPDATE your_table SET field_to_update=20;
In het voorbeeld hierboven zullen de waarden van het veld
field_to_update
van de tabelyour_table
allemaal worden ingesteld op20
.Maak een nieuwe kolom
area
en bereken het gebied van elk object met de functie van 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);
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Database (naam verbinding) |
|
[tekenreeks] |
De verbinding van de database (niet de naam van de database). Bestaande verbindingen zullen worden weergegeven in het combinatievak. |
SQL-query |
|
[tekenreeks] |
Definieert de query voor SQL, bijvoorbeeld |
Uitvoer
Uitvoer wordt niet gemaakt. De query voor SQL wordt ter plaatse op de laag uitgevoerd.
Pythoncode
ID algoritme: native:postgisexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.6. SpatiaLite SQL uitvoeren
Maakt het mogelijk dat een query voor een database van SQL wordt uitgevoerd op een database van SpatiaLite. Het algoritme zal geen nieuwe laag maken: het is ontworpen om query’s op de laag zelf uit te voeren.
Zie ook
PostgreSQL SQL uitvoeren, SQL uitvoeren
Voor enkele voorbeelden van query’s voor SQL, zie PostGIS SQL Query Examples.
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Bestandsdatabase |
|
[vector] |
De database van SQLite/SpatiaLite waarmee moet worden verbonden |
SQL-query |
|
[tekenreeks] Standaard: ‘’ |
Definieert de query voor SQL, bijvoorbeeld |
Uitvoer
Uitvoer wordt niet gemaakt. De query voor SQL wordt ter plaatse op de laag uitgevoerd.
Pythoncode
ID algoritme: native:spatialiteexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.
24.1.2.7. SpatiaLite SQL uitvoeren (geregistreerde DB)
Maakt het mogelijk dat een query voor een database van SQL wordt uitgevoerd op een database van SpatiaLite die is verbonden met QGIS. Het algoritme zal geen nieuwe laag maken: het is ontworpen om query’s op de laag zelf uit te voeren.
Zie ook
PostgreSQL SQL uitvoeren, SQL uitvoeren
Voor enkele voorbeelden van query’s voor SQL, zie PostGIS SQL Query Examples.
Parameters
Label |
Naam |
Type |
Beschrijving |
---|---|---|---|
Database |
|
[enumeratie] Standaard: niet ingesteld |
Selecteer een database van SQLite/SpatiaLite die is verbonden met de huidige sessie |
SQL-query |
|
[tekenreeks] Standaard: ‘’ |
Definieert de query voor SQL, bijvoorbeeld |
Uitvoer
Uitvoer wordt niet gemaakt. De query voor SQL wordt ter plaatse op de laag uitgevoerd.
Pythoncode
ID algoritme: native:spatialiteexecutesqlregistered
import processing
processing.run("algorithm_id", {parameter_dictionary})
Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmen gebruiken vanaf de console voor details over hoe algoritmen van Processing uit te voeren vanuit de console voor Python.