PostGIS新版中提供了一個可視化的工具,用於Shapefile數據的導入和導出,極大的方便了使用者的操作。
創建空間數據庫
以具有創建用戶權限的賬號登錄pgAdminIII,連接到數據庫
創建一個數據庫
對於空間數據的存儲,需要為該數據庫指定postgis模板。
如果有postgis模板,直接指定就行;但不幸的是,這個版本並沒有對應的postgis模板。所以需要手動處理一下:先建立普通類型的數據庫,再按照下列SQL擴展該數據庫,以支持PostGIS。
-- Enable PostGIS (includes raster) CREATE EXTENSION postgis; -- Enable Topology CREATE EXTENSION postgis_topology; -- Enable PostGIS Advanced 3D -- and other geoprocessing algorithms -- sfcgal not available with all distributions CREATE EXTENSION postgis_sfcgal; -- fuzzy matching needed for Tiger CREATE EXTENSION fuzzystrmatch; -- rule based standardizer CREATE EXTENSION address_standardizer; -- example rule data set CREATE EXTENSION address_standardizer_data_us; -- Enable US Tiger Geocoder CREATE EXTENSION postgis_tiger_geocoder; CREATE EXTENSION ogr_fdw; CREATE EXTENSION pgrouting; CREATE EXTENSION pointcloud; CREATE EXTENSION pointcloud_postgis;
擴展之后,執行以下語句,確認是否成功。
select postgis_full_version();
導入Shapefile數據
啟動PostGIS下的該GUI工具,連接到目標空間數據庫,連接成功會有相關提示信息。
導入shp數據,點擊Add File,在對話框中選擇對應的Shapefile;設置相關參數后,點擊Import將Shapefile導入到PostGIS數據庫。導入成功時,會有相應提示信息。
值得注意的是:使用該工具進行Shapefile入庫時,Shapefile完整的路徑名稱中不可以含有中文字符,但Shapefile內部數據信息(如字段名、屬性值)是可以使用中文字符的。
在PostgreSQL中查詢
uDig中加載PostGIS中圖層效果