Bảng điều khiển SQL trong QGIS


22

Tôi biết QGIS đi kèm với máy tính trường của nó, điều này không tệ. Nó cũng đi kèm với ftools cho phép một số hoạt động trên hình học và thuộc tính. Nhưng chúng ta thường cần kiểm soát nhiều hơn và tôi chưa thấy bất kỳ công cụ tiện lợi nào trong QGIS để thực hiện các hoạt động đó (nơi bạn có thể chọn các trường bạn cần ví dụ hoặc thực hiện các thao tác đối xứng trên chúng trong khi thực hiện truy vấn không gian).

Về cơ bản, tôi muốn biết liệu một bảng điều khiển SQL (một loại cửa sổ Mapbasic Mapinfo) có nằm trong lộ trình của QGIS hay không và nếu không, liệu có khó để mã hóa nó thành plugin hay không. Nếu nó tồn tại, xin vui lòng cho tôi biết, tôi đã bỏ lỡ nó! ;-)


4
Đây thực sự không phải là một câu hỏi hay cho trang web này. Nó sẽ tốt hơn để đưa các nhà phát triển của QGIS vào một trong các danh sách gửi thư của họ. Một câu hỏi tốt hơn có thể hỏi làm thế nào để làm một điều cụ thể hoặc nhận được một kết quả nhất định với QGIS. Các câu hỏi về các tính năng được lên kế hoạch sẽ trở thành tranh luận và vô nghĩa hoặc thậm chí sai trong thời gian.
Sean

1
FastQuery thật tuyệt vời! Đặc biệt là bạn có thể thay thế lớp bạn đang nhìn ngay lập tức. Điều này bổ sung sức mạnh phi thường cho QGIS được kết nối với PostGRES. Tuy nhiên, tôi đã tìm thấy một vấn đề, và đó là việc sử dụng các toán tử không gian. Tôi có thể thực hiện các truy vấn SQL cơ bản trong FastQuery, nhưng không có truy vấn không gian nào cho. Ví dụ: truy vấn này chỉ hoạt động trong plugin DB Manager: select * từ vùng đất ngập nước, lưu vực sông nơi st_intersects (wetlands.geom, watersheds.geom), nhưng khi tôi thử nó trong FastQuery, nó nói nó không phải là một lớp hợp lệ và không thể thêm vào bản đồ. Tôi đang nghĩ rằng có một cái gì đó pr

Tôi đã dành rất nhiều thời gian để tìm ra cách để làm điều đó trong QGIS 2.0. Hầu hết các câu trả lời ở đây và trên google đã lỗi thời. @Simo: Bạn có thể kiểm tra câu trả lời của HeyOverThere là câu trả lời hay nhất không? Sẽ dễ dàng hơn cho các độc giả tiếp theo để tìm câu trả lời đúng mới.
Nicolas Boisteault

Điều này được thực hiện (với một nhận xét bổ sung)
simo

Bạn có thể cho chúng tôi biết lý do tại sao câu trả lời không thỏa mãn bạn hoàn toàn không?
Nicolas Boisteault

Câu trả lời:


10

Plugin DB Manager mới hiện là một phần tiêu chuẩn của QGIS từ 1.8 trở đi. Nó có tự động hoàn thành, tô sáng cú pháp và bạn có thể thêm các lớp được tạo từ truy vấn không gian vào bản đồ của mình.

Trong 1.9 (phiên bản phát triển cho 2.0) Trình quản lý DB thêm các chức năng nhập / xuất khá tiện dụng.


Tôi không hài lòng với câu trả lời này vì tôi đang tìm kiếm một built-in công cụ cho công trình bất cứ định dạng dữ liệu, nhưng như @ Nicolas-Boisteault nói, chấp nhận câu trả lời này có thể khiến người khác vào đúng hướng. Tôi cũng mong là như vậy!
simo

10

Plugin RT Sql Layer có thể làm những gì bạn muốn (nhưng nó không phải là bàn điều khiển).

nhập mô tả hình ảnh ở đây

Bạn cũng có thể sử dụng bảng điều khiển python: 'PostGIS' select 'làm lớp vectơ trong QGIS'


Cảm ơn underdark. Tôi cũng biết plugin đó nhưng nó phụ thuộc vào việc sử dụng lớp Postgis. Trên thực tế tôi muốn có một công cụ không định dạng phụ thuộc đầu vào (như orbisgis đề xuất, xem bài đăng của agemen)
simo

3
Tôi hiểu rồi. Tôi chưa từng nghe về bất kỳ kế hoạch nào như vậy. Có lẽ một plugin sử dụng spatialite trong nền có thể là một cách tiếp cận. Đây có thể là một chủ đề cho Google Summer of Code.
underdark

Tôi có nên thêm cho mình một yêu cầu trên qgis.org/wiki/Google_Summer_of_Code_2011 không? Tôi không chắc chắn tôi không thể tạo một tài khoản trên trang wiki gqis.
simo

Bạn có thể yêu cầu trong danh sách gửi thư của người dùng để có tài khoản wiki. (Chúng tôi có vấn đề về thư rác.) Đồng thời, bạn có thể hỏi ý kiến ​​người dùng / nhà phát triển khác về chủ đề này.
underdark

1
@Nathan> Rất vui, bạn đang theo dõi bài viết đó. Tôi thực sự nên gửi ý tưởng trên danh sách dev của qgis (trừ khi bạn đã thực hiện nó?). Sử dụng SQL tiêu chuẩn để truy vấn bất kỳ loại dữ liệu nào cũng tuyệt vời (xem orbisgis ).
simo

7

có một plugin mới có sẵn: Fast SQL Layer.
Nó mở một giao diện điều khiển sql neo với mã nổi bật.


1
rất tuyệt, một khởi đầu tốt! Lưu ý: phụ thuộc vào Pygments (vì vậy đối với người dùng OSGeo4W, có một vài bước thủ công để xây dựng / cài đặt này)
Mike T

1
Có, bây giờ giải pháp là sao chép các pygments vào thư mục gói trang web của instgeo4w instalations. Nó làm việc cho tôi. Tôi sẽ sớm phát hành và cập nhật phiên bản để giải quyết điều đó.
Pablo

1
Tôi đã tải xuống và trích xuất Pygments-1.4.tar.gz, sau đó trong một vỏ OSGeo4W trong Pygments-1.4thư mục, nhập python setup.py buildrồipython setup.py install
Mike T


2

Tôi không biết một công cụ như vậy trong QGIS. Tuy nhiên, một phần mềm GIS nguồn mở khác cung cấp các khả năng như vậy, được đặt tên là OrbisGIS: http://www.orbisgis.org

Thật không may, vì một cái được viết bằng C ++ và cái kia bằng Java, chắc chắn sẽ rất khó để liên kết chúng ... :-(


Trên thực tế, tôi cũng là người dùng orbisgis (tôi là cựu sinh viên STEU) ;-) - chuyển đổi từ người này sang người khác ... và tôi nghĩ rằng bảng điều khiển SQL của bạn hiệu quả đến mức tôi muốn có cùng một điều trên qgis ( Tôi đã đề cập đến mapbasic trong câu hỏi của mình vì nó được biết đến nhiều hơn!). Orbisgis cho phép kiểm soát hoàn toàn thông qua bảng điều khiển SQL nhưng có thể mất thời gian để thực hiện một số thao tác cơ bản. Ngược lại, Qgis được thiết kế để thực hiện dễ dàng một số thao tác cơ bản nhưng gây khó khăn hơn cho các hoạt động kiểm soát hoàn toàn.
simo

Tôi hiểu ý của bạn là ... May mắn thay, phiên bản cuối cùng của OrbisGIS thêm tự động hoàn thành trong bảng điều khiển SQL. Và chúng tôi đang làm việc để thêm khả năng thực hiện các hoạt động cơ bản bên ngoài bảng điều khiển SQL.
Agemen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.