목록PostgreSQL (6)
-
2015.01.28 PostgreSQL 튜닝 사이트 (PgTune) 1
-
2015.01.28 PostGIS SRID 변경방법 (CRS 좌표계 코드 변경)
-
2015.01.28 PostGIS 면적함수 (ST_Area)
-
2015.01.28 PostGIS 1.5 데이터를 PostGIS 2.0 에서 복원하기
Annotation
저는 매우 중요하지만 아무렇지않게 넘어가는 부분이 있습니다.바로 테스트.여러가지 환경과, 여러가지 상황에서 테스트를 해봐야 좋은 물건이 나온다는건 당연히 알고있지만..알고만 있네요. 전혀 그렇게 테스트하지 않습니다. :D기껏해야 개발하며 크로스브라우징 테스트만 합니다.개발 끝나면 결함이 있는지 기능테스트 하구요.그래도 나름 발전했습니다.예전에는 IE Tester 툴을 사용했는데, 이제는 버추얼박스로 직접 다른환경마다 테스트합니다. (IE8, 9, 10, 11...)몇일전 서버가 많이 느려져서 이것저것 정보를 끌어모으는 중에 좋은 웹사이트를 하나 발견했습니다.저는 여지껏 PostgreSQL 을 사용하면서 단 한번도 옵션을 건들여 본 적이 없습니다.물론 외부접속 허용 제외하구요.이것저것 눈으로 보고, 귀로 ..
PostGIS에서 객체의 좌표체계를 바꿔야 할 경우가 있습니다. 함수를 통해 SRID코드를 변경하게되면, 레코드 별로 적용할 수 있습니다. SRID변경항법을 위해서는 몇가지 확인해야할 절차가 있습니다. 1. spatial_ref_sys 테이블에 변경해야 할 좌표체계 정보가 존재하는가? 2. 변경해야 할 테이블에 SRID 제약조건이 걸려있지는 않는가? 테이블에 제약조건이 있다면 쿼리를 날려도 변경이 되지 않습니다. 그렇기때문에 제약조건을 삭제한 후, 다시 추가하셔야 합니다. 그럼 이제 쿼리를 살펴보자면, select updategeometrysrid('DB명','스키마명','테이블명', 'geometry컬럼명', SRID코드); 이렇게 날리시면 됩니다. 즉, updategeometrysrid 함수를 이용하..
PostGIS 에서 폴리곤의 면적을 계산해야할 상황이 생겼습니다.함수를 찾아보니ST_Area 라는 함수가 있군요 :D사용법 매우 간단합니다. select st_area(공간데이터컬럼명) from 테이블명 일부분만 뽑아서 계산하실거면 조건문 추가하셔서 가져오시면 됩니다. :)
PostGIS 1.5 버전에서 덤프떠놓은 파일을 PostGIS 2.0 환경에서 복원시 공간데이터만 복원되지 않습니다.사유는 여러가지 있겠지만..가장 큰 사유는 제약조건 때문에 복원이 되지 않습니다.의외로 방법은 매우 간단했습니다. 1. PostGIS 1.5 환경에서 공간데이터가 존재하는 테이블의 SRID 제약조건을 삭제합니다.2. 백업을 합니다.3. PostGIS 2.0 환경에서 DB를 생성할 때 템플릿을 PostGIS로 선택한뒤,4. 복원을 합니다. PostGIS 1.5 환경때 SRID를 -1로 사용하였는데,PostGIS 2.0 환경에서는 SRID를 -로 생성할 수 없습니다.결국 핵심은 SRID 제약조건 삭제 및 템플릿 설정 후 복원이 되겠네요 :)