【開發者筆記】利用shp2pgsql將shape文件導入到postgresql中


 

導入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的安裝目錄下有該文件。如圖

  文件內容如下:localhost:5432:databaseName:username:password

 

 

  將該文件拷貝到如下目錄:C:\Users\你的電腦名字\AppData\Roaming\postgresql

 

  OK,大功告成!

 

5、注意事項

  a、表名全部小寫,postgresql識別不了大寫表名

  b、文件名路徑不能過長,最好不要包含中文

  c、編碼格式采用GBK不亂碼,如果亂碼可以試試UTF-8

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM