반응형

이번 포스팅에서는 gdal을 이용하여 shape 파일을 postgis db table로 컨버팅 작업을 해보자

 

먼저 shape 속성에 한글이 포함되어 있다면 인코딩 작업이 필요하다.

cmd > PGCLIENTENCODING=cp949 또는 PGCLIENTENCODING=EUC-KR

 

cmd > ogr2ogr -f "PostgreSQL" "PG:host=호스트 user=유저 dbname=데이터베이스 password=패스워드" "shapefile 경로" -nlt GEOMETRY -nln 스키마.생성할 테이블 이름 -t_srs EPSG:4326 -lco PRECISION=no -skipfailures -overwrite

 

 

-t_srs 는 좌표계 설정

-skipfailures 옵션의 경우 insert 도중 에러가 발생하면 프로세스가 끝나는게 아니라 예외처리되서 다음 레코드로 insert 작업이 진행된다.

-overwirte 옵션일 경우 디비에 테이블이 존재할 경우 덮어쓴다

 

-progress 옵션은 쉘에서 프로그래스를 확인할 수 있다.

  실제 옵션을 주고 하면 다음과 같이 진행된다.

  0...10...20...30...40...50...60...70...80...90...100...done 

 

따옴표는 생략할 경우 에러가 발생할 수도 있다.

 

자세한 옵션은 아래 링크를 참조하면 된다.

gdal.org/programs/ogr2ogr.html

 

ogr2ogr — GDAL documentation

Define the geometry type for the created layer. One of NONE, GEOMETRY, POINT, LINESTRING, POLYGON, GEOMETRYCOLLECTION, MULTIPOINT, MULTIPOLYGON, MULTILINESTRING, CIRCULARSTRING, COMPOUNDCURVE, CURVEPOLYGON, MULTICURVE, and MULTISURFACE non-linear geometry

gdal.org

gdal 명령어를 활용하여 shape파일을 컨버팅 하는 작업을 해봤다.

 

그 외 geotools, shp2pgsql을 활용하여 할 수도 있다.

geotools와 shp2pgsql을 활용한 컨버팅은 아래 링크를 참조하면 확인 할 수 있다.

 

spatiumwdev.tistory.com/entry/Geotools-shapefile-PostGis-데이터로-바꾸기

 

Geotools shapefile PostGis 데이터로 바꾸기

이번 글에서는 geotools를 활용해서 shpaefile을 Postgis로 변환하는 것에 대해 알아볼려고 한다. dbf 파일에 직접 접근해서 데이터를 가져올 수 도 있지만 공간쿼리를가 필요한 경우 아무래도 postgis와

spatiumwdev.tistory.com

spatiumwdev.tistory.com/entry/shp2pgsql을-활용하여-Shapefile-to-postgis로-바꿔보자

 

shp2pgsql을 활용하여 Shapefile to postgis로 바꿔보자

이번엔 shapefile을 postgresql table로 바꾸는 작업을 해보겠다. 전에 쓰던 방법은 gdal을 활용하여 shapefile을 db table로 컨버팅을 한 적이 있다. 하지만 용량이 조금이라도 클 경우 예를 들어 100MB 이상에.

spatiumwdev.tistory.com

 

반응형

+ Recent posts