Viktigt

Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 100.00%.

24.1.3. Databas

24.1.3.1. Exportera till PostgreSQL

Exporterar ett vektorlager till en PostgreSQL-databas och skapar en ny relation. Om det finns en relation med samma namn kan den tas bort innan den nya relationen skapas. Innan detta måste en anslutning mellan QGIS och PostgreSQL-databasen skapas (se t.ex. Skapa en lagrad anslutning).

Parametrar

Etikett

Namn

Typ

Beskrivning

Lager att importera

INPUT

[vektor: vilken som helst]

Vektorlager att lägga till i databasen

Databas (anslutningsnamn)

DATABASE

[sträng]

Namnet på databasanslutningen (inte databasnamnet). Befintliga anslutningar visas i kombinationsrutan.

Schema (schemats namn)

Valfritt

SCHEMA

[sträng]

Standard: ”offentlig

Namn på det schema där data ska lagras. Det kan vara ett nytt schema eller ett som redan finns.

Tabell att importera till (lämna tomt för att använda skiktnamn)

Valfritt

TABLENAME

[sträng]

Standard: ’’

Definierar ett tabellnamn för den importerade vektorfilen. Om inget läggs till kommer skiktnamnet att användas.

Primärt nyckelfält

Valfritt

PRIMARY_KEY

[bordsfält: alla]

Ställer in fältet för primärnyckel från ett befintligt fält i vektorlagret. En kolumn med unika värden kan användas som primärnyckel för databasen.

Geometri kolumn

GEOMETRY_COLUMN

[sträng]

Standard: ’geom’

Definierar namnet på geometrikolumnen i den nya PostGIS-tabellen. Geometriinformation för objekten lagras i denna kolumn.

Kodning

Valfritt

ENCODING

[sträng]

Standard: ”UTF-8

Definierar kodningen av utgångsskiktet

Skriv över

OVERWRITE

[boolean]

Standard: Sann

Om den angivna tabellen existerar kommer detta alternativ att raderas och en ny tabell skapas innan funktionerna läggs till om det här alternativet anges till ”True”. Om detta alternativ är False och tabellen existerar, kommer algoritmen att göra ett undantag (”relationen existerar redan”).

Skapa rumsligt index

CREATEINDEX

[boolean]

Standard: Sann

Anger om ett spatialt index ska skapas eller inte

Konvertera fältnamn till gemener

LOWERCASE_NAMES

[boolean]

Standard: Sann

Konverterar fältnamnen i inmatningsvektorlagret till gemener

Ta bort längdbegränsningen för teckenfält

DROP_STRING_LENGTH

[boolean]

Standard: Falsk

Bör längdbegränsningar för teckenfält tas bort eller inte

Skapa endelade geometrier istället för flerdelade

FORCE_SINGLEPART

[boolean]

Standard: Falsk

Ska funktionerna i utdataskiktet vara endelade istället för flerdelade. Som standard bevaras den befintliga geometriinformationen.

Utgångar

Algoritmen har ingen utdata.

Python-kod

Algoritm ID: qgis:importintopostgis

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.2. Exportera till SpatiaLite

Exporterar ett vektorlager till en SpatiaLite-databas. Innan detta kan göras måste en anslutning mellan QGIS och SpatiaLite-databasen skapas (se t.ex. SpatiaLite-lager).

Parametrar

Etikett

Namn

Typ

Beskrivning

Lager att importera

INPUT

[vektor: vilken som helst]

Vektorlager att lägga till i databasen

Fildatabas

DATABASE

[vektor: vilken som helst]

SQLite/SpatiaLite-databasfilen att ansluta till

Tabell att importera till (lämna tomt för att använda skiktnamn)

Valfritt

TABLENAME

[sträng]

Standard: ’’

Definierar tabellnamnet för den importerade vektorfilen. Om inget anges kommer skiktnamnet att användas.

Primärt nyckelfält

Valfritt

PRIMARY_KEY

[bordsfält: alla]

Använd ett fält i inputvektorlagret som primär nyckel

Geometri kolumn

GEOMETRY_COLUMN

[sträng]

Standard: ’geom’

Definierar namnet på geometrikolumnen i den nya SpatiaLite-tabellen. Geometriinformation för objekten lagras i denna kolumn.

Kodning

Valfritt

ENCODING

[sträng]

Standard: ”UTF-8

Definierar kodningen av utgångsskiktet

Skriv över

OVERWRITE

[boolean]

Standard: Sann

Om den angivna tabellen finns, kommer detta alternativ att raderas om det sätts till ”True” och en ny tabell kommer att skapas innan skiktets funktioner läggs till. Om detta alternativ är False och tabellen finns, kommer algoritmen att göra ett undantag (”tabellen finns redan”).

Skapa rumsligt index

CREATEINDEX

[boolean]

Standard: Sann

Anger om ett spatialt index ska skapas eller inte

Konvertera fältnamn till gemener

LOWERCASE_NAMES

[boolean]

Standard: Sann

Konvertera fältnamnen i inputvektorlagret till gemener

Ta bort längdbegränsningen för teckenfält

DROP_STRING_LENGTH

[boolean]

Standard: Falsk

Bör längdbegränsningar för teckenfält tas bort eller inte

Skapa endelade geometrier istället för flerdelade

FORCE_SINGLEPART

[boolean]

Standard: Falsk

Ska funktionerna i utdataskiktet vara endelade istället för flerdelade. Som standard bevaras den befintliga geometriinformationen.

Utgångar

Algoritmen har ingen utdata.

Python-kod

Algoritm-ID: qgis:importintospatialite

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.3. Paketlager

Lägger till lager till ett GeoPackage.

Om GeoPackage finns och Overwrite existing GeoPackage är markerat kommer det att skrivas över (tas bort och återskapas). Om GeoPackage finns och Overwrite existing GeoPackage inte är markerat, kommer lagret att läggas till.

Parametrar

Etikett

Namn

Typ

Beskrivning

Inmatningslager

LAYERS

[vektor: valfri] [lista]

De (vektor-)lager som ska importeras till GeoPackage. Rasterlager stöds inte. Om ett rasterlager läggs till kommer ett QgsProcessingException att kastas.

Overwrite existing GeoPackage (Skriv över befintligt GeoPackage)

OVERWRITE

[boolean]

Standard: Falsk

Om det angivna GeoPackage finns kommer detta alternativ att raderas om det är inställt på ”True” och ett nytt skapas innan lagren läggs till. Om alternativet är inställt på False kommer lagren att läggas till.

Spara lagerformat i GeoPackage

SAVE_STYLES

[boolean]

Standard: Sann

Spara lagerstilarna

Spara metadata för lager i GeoPackage

SPARA_METADATA

[boolean]

Standard: Sann

Om markerat kopieras källskiktets metadata till GeoPackage så att det blir standardmetadata för skiktet.

Spara endast utvalda funktioner

SELECTED_FEATURES_ONLY

[boolean]

Standard: Falsk

Om ett lager har ett urval kommer endast valda funktioner att sparas om du ställer in detta alternativ på True. För lager utan urval sparas alla funktioner.

Exportrelaterade lager enligt de relationer som definieras i projektet

EXPORT_RELATED_LAYERS

[boolean]

Standard: Falsk

Om ett indataskikt har relations inställt i projektet, kommer detta alternativ att exportera även dess relaterade skikt om det är inställt på True. Om skiktet har valda funktioner exporteras endast deras relaterade funktioner, såvida inte det relaterade skiktet också var ett indataskikt.

Destination GeoPackage

OUTPUT

&Arkiv

Standard: [Spara till temporär fil]

Ange var GeoPackage-filen ska lagras. En av

  • Spara till en temporär fil

  • Spara till fil…

Utgångar

Etikett

Namn

Typ

Beskrivning

Lager inom nytt paket

OUTPUT_LAYERS

[sträng] [lista]

Listan över lager som lagts till i GeoPackage.

Python-kod

Algoritm-ID: native:paket

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.4. PostgreSQL kör och ladda SQL

Tillåter att en SQL-databasfråga utförs på en PostgreSQL-databas som är ansluten till QGIS och laddar resultatet. Algoritmen skapar inte ett nytt lager: den är utformad för att köra frågor på själva lagret.

Exempel

  1. Ställ in alla värden i ett befintligt fält till ett fast värde. SQL-frågesträngen kommer att vara:

    UPDATE your_table SET field_to_update=20;
    

    I exemplet ovan kommer värdena för fältet field_to_update i tabellen your_table att sättas till 20.

  2. Skapa en ny kolumn area och beräkna arean för varje objekt med PostGIS-funktionen 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);
    

Parametrar

Etikett

Namn

Typ

Beskrivning

Databas (anslutningsnamn)

DATABASE

[sträng]

Databasanslutningen (inte databasnamnet). Befintliga anslutningar visas i kombinationsrutan.

SQL-förfrågan

SQL

[sträng]

Definierar SQL-frågan, t.ex. 'UPDATE my_table SET field=10'.

Unikt namn på ID-fält

ID_FIELD

[sträng]

Standard: id

Anger fältet för primärnyckel (en kolumn i resultattabellen)

Namn på geometriskt fält

Valfritt

GEOMETRY_FIELD

[sträng]

Standard: ’geom’

Namn på geometrikolumnen (en kolumn i resultattabellen)

Utgångar

Etikett

Namn

Typ

Beskrivning

SQL-lager

OUTPUT

[vektor: vilken som helst]

Det resulterande vektorlagret som ska laddas in i QGIS.

Python-kod

Algoritm ID: qgis:postgisexecuteandloadsql

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.5. PostgreSQL kör SQL

Gör det möjligt att utföra en SQL-databasfråga på en PostgreSQL-databas som är ansluten till QGIS. Algoritmen skapar inte ett nytt skikt: den är utformad för att köra frågor på själva skiktet.

Exempel

  1. Ställ in alla värden i ett befintligt fält till ett fast värde. SQL-frågesträngen kommer att vara:

    UPDATE your_table SET field_to_update=20;
    

    I exemplet ovan kommer värdena för fältet field_to_update i tabellen your_table att sättas till 20.

  2. Skapa en ny kolumn area och beräkna arean för varje objekt med PostGIS-funktionen 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);
    

Se även

PostgreSQL kör och ladda SQL, Exekvera SQL, qgisspatialiteexecutesql`

Parametrar

Etikett

Namn

Typ

Beskrivning

Databas (anslutningsnamn)

DATABASE

[sträng]

Databasanslutningen (inte databasnamnet). Befintliga anslutningar visas i kombinationsrutan.

SQL-förfrågan

SQL

[sträng]

Definierar SQL-frågan, t.ex. 'UPDATE my_table SET field=10'.

Utgångar

Ingen utdata skapas. SQL-frågan exekveras på plats.

Python-kod

Algoritm ID: native:postgisexecutesql

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.6. SpatiaLite kör SQL

Gör det möjligt att utföra en SQL-databasfråga på en SpatiaLite-databas. Databasen bestäms av ett inmatningslager eller en fil. Algoritmen skapar inte ett nytt lager: den är utformad för att köra frågor på själva lagret.

Se även

PostgreSQL kör SQL, Exekvera SQL

För några exempel på SQL-frågor, se PostGIS SQL Query Examples.

Parametrar

Etikett

Namn

Typ

Beskrivning

Databaslager (eller fil)

DATABASE

&Arkiv

SQLite/SpatiaLite-databasfilen att ansluta till

SQL-förfrågan

SQL

[sträng]

Standard: ’’

Definierar SQL-frågan, t.ex. 'UPDATE my_table SET field=10'.

Utgångar

Ingen utdata skapas. SQL-frågan exekveras på plats.

Python-kod

Algoritm-ID: native:spatialiteexecutesql

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.

24.1.3.7. SpatiaLite exekverar SQL (registrerad DB)

Gör det möjligt att utföra en SQL-databasfråga på en SpatiaLite-databas som är ansluten till QGIS. Algoritmen skapar inte ett nytt skikt: den är utformad för att köra frågor på själva skiktet.

Se även

PostgreSQL kör SQL, Exekvera SQL

För några exempel på SQL-frågor, se PostGIS SQL Query Examples.

Parametrar

Etikett

Namn

Typ

Beskrivning

Spara i databas

DATABASE

[uppräkning]

Standard: ej inställd

Välj en SQLite/SpatiaLite-databas som är ansluten till den aktuella sessionen

SQL-förfrågan

SQL

[sträng]

Standard: ’’

Definierar SQL-frågan, t.ex. 'UPDATE my_table SET field=10'.

Utgångar

Ingen utdata skapas. SQL-frågan exekveras på plats.

Python-kod

Algoritm-ID: `native:spatialiteexecutesqlregistered

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

algoritm id visas när du håller muspekaren över algoritmen i verktygslådan Processing Toolbox. I parameter dictionary finns parameternamn och värden. Se Använda bearbetningsalgoritmer från konsolen för information om hur du kör bearbetningsalgoritmer från Python-konsolen.