25.1.2. 데이터베이스
25.1.2.1. PostgreSQL로 내보내기
새 관계를 생성하면서 벡터 레이어를 PostgreSQL 데이터베이스로 내보냅니다. 동일한 명칭을 가진 관계가 존재하는 경우, 새 관계를 생성하기 전에 기존 관계를 제거할 수 있습니다. 이 알고리즘을 실행하기 전에 QGIS와 PostgreSQL 데이터베이스 사이의 연결을 생성해야 합니다. (저장된 연결 생성하기 참조)
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Layer to import |
|
[vector: any] |
데이터베이스에 추가할 벡터 레이어 |
Database (connection name) |
|
[string] |
데이터베이스 연결의 명칭. (데이터베이스명이 아닙니다) 기존 연결은 콤보박스에 표시될 것입니다. |
Schema (schema name) 부가적 |
|
[string] 기본값: ‘public’ |
데이터를 저장할 스키마의 명칭. 새 스키마일 수도 있고 기존 스키마일 수도 있습니다. |
Table to import to (leave blank to use layer name) 부가적 |
|
[string] 기본값: ‘’ |
가져온 벡터 파일을 위한 테이블 명칭을 정의합니다. 아무것도 추가하지 않으면 레이어명을 사용할 것입니다. |
Primary key field 부가적 |
|
[tablefield: any] |
벡터 레이어에 있는 기존 필드로부터 기본 키(primary key)를 설정합니다. 유일한(unique) 값을 가진 열을 데이터베이스용 기본 키로 사용할 수 있습니다. |
Geometry column |
|
[string] 기본값: ‘geom’ |
새 PostGIS 테이블의 도형 열의 명칭을 정의합니다. 이 열에 객체에 대한 도형 정보를 저장합니다. |
Encoding 부가적 |
|
[string] 기본값: ‘UTF-8’ |
산출 레이어의 인코딩을 정의합니다. |
Overwrite |
|
[boolean] 기본값: True |
지정한 테이블이 존재하는 경우, 이 옵션을 |
Create spatial index |
|
[boolean] 기본값: True |
공간 인덱스를 생성할지 여부를 지정합니다. |
Convert field names to lowercase |
|
[boolean] 기본값: True |
입력 벡터 레이어의 필드명을 소문자로 변환합니다. |
Drop length constraint on character fields |
|
[boolean] 기본값: False |
문자 필드의 길이 제약 조건을 제거할지 여부를 지정합니다. |
Create single-part geometries instead of multi-part |
|
[boolean] 기본값: False |
산출 레이어의 피처가 다중 부분 대신 단일 부분이어야 하는지 여부를 지정합니다. 기존 도형 정보를 유지하는 것이 기본값입니다. |
산출물
이 알고리즘은 아무것도 산출하지 않습니다.
파이썬 코드
알고리즘 ID: qgis:importintopostgis
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.2. SpatiaLite로 내보내기
벡터 레이어를 SpatiaLite 데이터베이스로 내보냅니다. 이 알고리즘을 실행하기 전에 QGIS와 SpatiaLite 데이터베이스 사이의 연결을 생성해야 합니다. (SpatiaLite 레이어 참조)
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Layer to import |
|
[vector: any] |
데이터베이스에 추가할 벡터 레이어 |
File database |
|
[vector: any] |
연결할 SQLite/SpatiaLite 데이터베이스 파일 |
Table to import to (leave blank to use layer name) 부가적 |
|
[string] 기본값: ‘’ |
가져온 벡터 파일을 위한 테이블 명칭을 정의합니다. 아무것도 지정하지 않으면 레이어명을 사용할 것입니다. |
Primary key field 부가적 |
|
[tablefield: any] |
입력 벡터 레이어의 필드를 기본 키로 사용합니다. |
Geometry column |
|
[string] 기본값: ‘geom’ |
새 SpatiaLite 테이블의 도형 열의 명칭을 정의합니다. 이 열에 객체에 대한 도형 정보를 저장합니다. |
Encoding 부가적 |
|
[string] 기본값: ‘UTF-8’ |
산출 레이어의 인코딩을 정의합니다. |
Overwrite |
|
[boolean] 기본값: True |
지정한 테이블이 존재하는 경우, 이 옵션을 |
Create spatial index |
|
[boolean] 기본값: True |
공간 인덱스를 생성할지 여부를 지정합니다. |
Convert field names to lowercase |
|
[boolean] 기본값: True |
입력 벡터 레이어의 필드명을 소문자로 변환합니다. |
Drop length constraint on character fields |
|
[boolean] 기본값: False |
문자 필드의 길이 제약 조건을 제거할지 여부를 지정합니다. |
Create single-part geometries instead of multi-part |
|
[boolean] 기본값: False |
산출 레이어의 피처가 다중 부분 대신 단일 부분이어야 하는지 여부를 지정합니다. 기존 도형 정보를 유지하는 것이 기본값입니다. |
산출물
이 알고리즘은 아무것도 산출하지 않습니다.
파이썬 코드
알고리즘 ID: qgis:importintospatialite
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.3. 패키지 레이어
GeoPackage에 레이어를 추가합니다.
GeoPackage가 존재하고 Overwrite existing GeoPackage
옵션을 활성화했다면, 기존 GeoPackage를 재작성할 (제거한 다음 새로 생성할) 만약 GeoPackage가 존재하는데 Overwrite existing GeoPackage
옵션이 비활성 상태라면, 레이어를 추가할 것입니다.
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Input layers |
|
[vector: any] [list] |
GeoPackage로 가져올 (벡터) 레이어입니다. 래스터 레이어는 지원하지 않습니다. 래스터 레이어를 추가하면, |
Overwrite existing GeoPackage |
|
[boolean] 기본값: False |
지정한 GeoPackage가 존재하는 경우, 이 옵션을 |
Save layer styles into GeoPackage |
|
[boolean] 기본값: True |
레이어 스타일을 저장합니다. |
Save only selected features |
|
[boolean] 기본값: False |
레이어에 선택 집합이 있는 경우, 이 옵션을 |
Destination GeoPackage |
|
[file] 기본값: |
GeoPackage 파일을 저장할 위치를 지정합니다. 다음 가운데 하나로 저장할 수 있습니다:
|
산출물
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Layers within new package |
|
[string] [list] |
GeoPackage에 추가된 레이어 목록입니다. |
파이썬 코드
알고리즘 ID: native:package
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.4. PostgreSQL에서 SQL 실행 및 불러오기
QGIS와 연결된 PostgreSQL 데이터베이스 상에서 SQL 데이터베이스 쿼리 작업을 허용하고 그 결과를 불러올 수 있습니다. 이 알고리즘은 새 레이어를 생성하지 않을 것입니다. 이 알고리즘은 레이어 자체에 대해 쿼리를 실행하도록 설계되었습니다.
예시
기존 필드의 모든 값을 고정 값으로 설정하십시오. SQL 쿼리 문자열은 다음과 같습니다:
UPDATE your_table SET field_to_update=20;
이 예시는
your_table
테이블의field_to_update
필드의 값을 모두20
으로 설정할 것입니다.새
area
열을 생성하고ST_AREA
PostGIS 함수를 통해 각 피처의 면적을 계산하십시오.-- 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);
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Database (connection name) |
|
[string] |
데이터베이스 연결의 명칭. (데이터베이스명이 아닙니다) 기존 연결은 콤보박스에 표시될 것입니다. |
SQL query |
|
[string] |
SQL 쿼리를 정의합니다. 예: |
Unique ID field name |
|
[string] 기본값: id |
기본 키 필드를 (산출 테이블의 열) 설정합니다. |
Geometry field name 부가적 |
|
[string] 기본값: ‘geom’ |
도형 열의 명칭을 (산출 테이블의 열) 설정합니다. |
산출물
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
SQL layer |
|
[vector: any] |
QGIS로 불러올 산출 벡터 레이어입니다. |
파이썬 코드
알고리즘 ID: qgis:postgisexecuteandloadsql
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.5. PostgreSQL에서 SQL 실행
QGIS와 연결된 PostgreSQL 데이터베이스 상에서 SQL 데이터베이스 쿼리 작업을 허용합니다. 이 알고리즘은 새 레이어를 생성하지 않을 것입니다. 이 알고리즘은 레이어 자체에 대해 쿼리를 실행하도록 설계되었습니다.
예시
기존 필드의 모든 값을 고정 값으로 설정하십시오. SQL 쿼리 문자열은 다음과 같습니다:
UPDATE your_table SET field_to_update=20;
이 예시는
your_table
테이블의field_to_update
필드의 값을 모두20
으로 설정할 것입니다.새
area
열을 생성하고ST_AREA
PostGIS 함수를 통해 각 피처의 면적을 계산하십시오.-- 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);
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Database (connection name) |
|
[string] |
데이터베이스 연결의 명칭. (데이터베이스명이 아닙니다) 기존 연결은 콤보박스에 표시될 것입니다. |
SQL query |
|
[string] |
SQL 쿼리를 정의합니다. 예: |
산출물
아무것도 산출하지 않습니다. SQL 쿼리는 제자리에서(in-place) 실행됩니다.
파이썬 코드
알고리즘 ID: native:postgisexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.6. SpatiaLite에서 SQL 실행
SpatiaLite 데이터베이스 상에서 SQL 데이터베이스 쿼리 작업을 허용합니다. 이 알고리즘은 새 레이어를 생성하지 않을 것입니다. 이 알고리즘은 레이어 자체에 대해 쿼리를 실행하도록 설계되었습니다.
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
File Database |
|
[vector] |
연결할 SQLite/SpatiaLite 데이터베이스 파일 |
SQL query |
|
[string] 기본값: ‘’ |
SQL 쿼리를 정의합니다. 예: |
산출물
아무것도 산출하지 않습니다. SQL 쿼리는 제자리에서(in-place) 실행됩니다.
파이썬 코드
알고리즘 ID: native:spatialiteexecutesql
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.
25.1.2.7. SpatialLite에서 SQL 실행 (등록된 DB)
QGIS와 연결된 SpatiaLite 데이터베이스 상에서 SQL 데이터베이스 쿼리 작업을 허용합니다. 이 알고리즘은 새 레이어를 생성하지 않을 것입니다. 이 알고리즘은 레이어 자체에 대해 쿼리를 실행하도록 설계되었습니다.
파라미터
라벨 |
명칭 |
유형 |
설명 |
---|---|---|---|
Database |
|
[enumeration] 기본값: 설정하지 않음 |
현재 세션에 연결된 SQLite/SpatiaLite 데이터베이스를 선택하십시오. |
SQL query |
|
[string] 기본값: ‘’ |
SQL 쿼리를 정의합니다. 예: |
산출물
아무것도 산출하지 않습니다. SQL 쿼리는 제자리에서(in-place) 실행됩니다.
파이썬 코드
알고리즘 ID: native:spatialiteexecutesqlregistered
import processing
processing.run("algorithm_id", {parameter_dictionary})
공간 처리 툴박스에 있는 알고리즘 위에 마우스를 가져가면 알고리즘 ID 를 표시합니다. 파라미터 목록(dictionary) 은 파라미터 명칭 및 값을 제공합니다. 파이썬 콘솔에서 공간 처리 알고리즘을 어떻게 실행하는지 자세히 알고 싶다면 콘솔에서 공간 처리 알고리즘 사용 을 참조하세요.