【開發者筆記】利用shp2pgsql將shape文件導入到postgresql中
阿新 • • 發佈:2018-05-21
info isp TP 命令 文件拷貝 最好 導入失敗 註意事項 eat
導入shp文件到postgresql中
1、首先,你需要讓shp2pgsql命令可用,百度下載,加入環境變量即可。
下載地址:https://download.osgeo.org/postgis/windows/pg96/
如圖,打開網址,下載目標文件,解壓得到如下目錄:
將該目錄添加到環境變量,然後cmd可運行shp2pgsql即可。
2、命令如下:
shp2pgsql -s 3857 -a -W GBK 文件名.shp 命名空間名.表名 | psql -h localhost -U postgres -d 數據庫名-p 5432
3、可能會出現導入失敗,因為要先給導入的數據庫增加空間擴展功能:
create extension postgis; create extension postgis_topology; create extension fuzzystrmatch; create extension postgis_tiger_geocoder;
4、命令行提示輸入密碼
為了在程序中免密碼輸入,我們加入pgpass.conf文件。在postgresql的安裝目錄下有該文件。如圖
文件內容如下:
將該文件拷貝到如下目錄:C:\Users\你的電腦名字\AppData\Roaming\postgresql
OK,大功告成!
5、註意事項
a、表名全部小寫,postgresql識別不了大寫表名
b、文件名路徑不能過長,最好不要包含中文
c、編碼格式采用GBK不亂碼,如果亂碼可以試試UTF-8
【開發者筆記】利用shp2pgsql將shape文件導入到postgresql中