导入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
原文地址:https://www.cnblogs.com/wyongbo/p/shp2pgsql.html
时间: 2024-10-06 21:09:56