QGIS의 SQL 콘솔


22

QGIS가 필드 계산기와 함께 제공되는 것은 나쁘지 않습니다. 또한 지오메트리 및 속성에 대한 여러 작업을 허용하는 ftools가 제공됩니다. 그러나 우리는 종종 더 많은 제어가 필요하며 QGIS에서 그러한 작업을 수행하는 편리한 도구를 보지 못했습니다 (예를 들어 필요한 필드를 선택하거나 공간 쿼리를 수행하는 동안 산술 연산을 수행 할 수 있음).

기본적으로 SQL 콘솔 (Mapinfo mapbasic 창 종류)이 QGIS의 로드맵에 있는지, 그렇지 않은 경우 플러그인으로 코딩하기 어려운지 알고 싶습니다. 아직 존재하지 않는 경우 알려주십시오. ;-)


4
이 사이트에는 좋은 질문이 아닌 것 같습니다. QGIS 개발자에게 메일 링리스트 중 하나를 사용하는 것이 좋습니다. 더 좋은 질문은 QGIS로 특정 작업을 수행하거나 특정 결과를 얻는 방법을 묻습니다. 계획된 기능에 대한 질문은 시간이 걸리고 무의미하거나 잘못 될 수 있습니다.
Sean

1
FastSQL은 대단합니다! 특히보고있는 레이어를 즉시 교체 할 수 있습니다. 이는 PostGRES에 연결된 QGIS에 특별한 힘을 더합니다. 그러나 한 가지 문제점을 발견했으며 이는 공간 연산자를 사용하는 것입니다. FastSQL에서 기본 SQL 쿼리를 수행 할 수 있지만 공간 쿼리는 수행 할 수 없습니다. 예를 들어,이 쿼리는 DB Manager 플러그인에서 찾을 수 있습니다. select * from wetlands, stsheds (wetlands.geom, watersheds.geom)의 유역이지만 FastSQL에서 시도 할 때 유효한 레이어가 아니며 유효하지 않다고 말합니다 지도에 추가되었습니다. 나는 뭔가 홍보가 있다고 생각합니다

QGIS 2.0에서 그 방법을 찾기 위해 많은 시간을 보냈습니다. 여기와 Google에 대한 답변은 대부분 구식입니다. @ 시모 : 당신은 HeyOverThere 최고의 답변으로 답변을 확인할 수 있습니까? 다음 독자가 새로운 정답을 찾는 것이 더 쉬울 것입니다.
Nicolas Boisteault

이 작업이 완료되었습니다 (추가 설명 포함)
simo December

왜 대답이 당신을 완전히 만족시키지 못하는지 말씀해 주시겠습니까?
Nicolas Boisteault

답변:


10

새로운 DB Manager 플러그인은 이제 1.8부터 QGIS의 표준 부분입니다. 자동 완성, 구문 강조 기능이 있으며 공간 쿼리에서 작성된 레이어를 맵에 추가 할 수 있습니다.

1.9 (2.0 개발 버전)에서 DB 관리자는 매우 편리한 가져 오기 / 내보내기 기능을 추가합니다.


데이터 형식이 무엇이든 작동 하는 내장 도구를 찾고 있었기 때문에이 답변에 만족하지 않지만 @ Nicolas-Boisteault가 말했듯 이이 답변을 수락하면 다른 사람들이 올바른 방향으로 들어갈 수 있습니다. 그러길 바래!
simo

10

RT Sql Layer 플러그인은 원하는 것을 할 수 있습니다 (그러나 콘솔은 아닙니다).

여기에 이미지 설명을 입력하십시오

파이썬 콘솔도 사용할 수 있습니다 : QGIS에서 'PostGIS'select '문을 벡터 레이어로'


고마워 또한 플러그인을 알고 있지만 Postgis 레이어 사용에 의존합니다. 사실은 내가 (orbisgis는 제안으로, agemen 게시물을 참조) 형식으로 입력 의존하지 않는 도구를 가지고 싶습니다
SIMO

3
내가 참조. 나는 그런 계획에 대해 들어 본 적이 없습니다. 백그라운드에서 공간을 사용하는 플러그인이 접근 방법 일 수 있습니다. Google Summer of Code에 대한 주제 일 수 있습니다.
underdark

qgis.org/wiki/Google_Summer_of_Code_2011에 대한 요청을 추가해야합니까 ? gqis 위키 페이지에서 계정을 만들 수 있는지 잘 모르겠습니다.
simo

사용자 메일 링리스트에서 위키 계정을 요청할 수 있습니다. (스팸 문제가있었습니다.) 동시에 해당 주제에 대한 다른 사용자 / 개발자 의견을 요청할 수 있습니다.
underdark

1
@Nathan> 니스, 당신은 그 게시물을 따르고 있습니다. qgis dev list에 아이디어를 제출해야합니다 (이미 이미 수행 한 경우 제외). 표준 SQL을 사용하여 모든 유형의 데이터를 쿼리하는 것은 환상적입니다 ( orbisgis 참조 ).
simo

7

Fast SQL Layer라는 새로운 플러그인이 있습니다.
코드 강조 표시가있는 도킹 된 SQL 콘솔을 엽니 다.


1
매우 시원하고 좋은 시작입니다! 참고 : 피그먼트에 따라 다릅니다 (OSGeo4W 사용자의 경우 수동으로 빌드 / 설치할 단계가 거의 없음)
Mike T

1
예, 지금 해결책은 피그먼트를 osgeo4w 설치의 사이트 패키지 폴더에 복사하는 것입니다. 그것은 나를 위해 일했다. 곧 나는 그것을 해결하기 위해 버전을 출시하고 업데이트 할 것이다.
Pablo

1
Pygments-1.4.tar.gz를 다운로드하여 압축을 푼 다음 Pygments-1.4디렉토리 의 OSGeo4W 쉘에 python setup.py build다음을 입력하십시오.python setup.py install
Mike T


2

나는 QGIS에서 그러한 도구를 모른다. 그러나 다른 오픈 소스 GIS 소프트웨어는 OrbisGIS라는 http://www.orbisgis.org 와 같은 기능을 제공합니다 .

불행히도 하나는 C ++로 작성되고 다른 하나는 Java로 작성되므로 링크하기가 확실히 어려울 것입니다 ... :-(


실제로, 나는 또한 orbisgis 사용자 (나는 전 STEU 학생입니다) ;-)-하나에서 다른 것으로 전환하고 있습니다 ... 그리고 SQL 콘솔이 너무 효율적이라고 생각하여 qgis ( 더 잘 알려져 있기 때문에 내 질문에 mapbasic을 언급했습니다!). Orbisgis는 SQL 콘솔을 통해 모든 것을 제어 할 수 있지만 몇 가지 기본 작업을 수행하는 데 시간이 걸릴 수 있습니다. 반대로 Qgis는 일부 기본 작업을 쉽게 수행하도록 설계되었지만 모든 제어 작업을 수행하기가 더 어려워졌습니다.
simo

무슨 뜻인지 이해합니다 ... 다행히도 OrbisGIS의 마지막 버전은 SQL 콘솔에서 자동 완성 기능을 추가합니다. 그리고 우리는 SQL 콘솔 외부에서 기본 작업을 수행하는 기능을 추가하기 위해 노력하고 있습니다.
Agemen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.