向postgis导入shapefile数据(转自:John Larry的万维空间)
向postgis导入shapefile数据(转自:John Larry的万维空间)
(1)安装后运行pgadmin III,右击postgresql 8.3(localhost)服务器,连接之,这里的密码是你安装时设置的密码,务必牢记
(2)连接后,我们发现postgis安装后自动给我们生成了一个数据template_postgis,我们将要导入的数据就需要放到这个数据库中.
(3)运行命名提示符cmd.exe,将其转向C:/Program Files/PostgreSQL/8.3/bin(或者将cmd.exe复制到该目录下)如下:
C:/Program Files/PostgreSQL/8.3/bin>
(4)首先将shp生成对应的sql脚本,键入以下字符
C:/Program Files/PostgreSQL/8.3/bin>shp2pgsql -W “LATIN1” D:/CampusGISProject/new_pku_vector/viwpt.shp viwpt > D:/CampusGISProject/new_pku_vector/viwpt.sql
这里的-W
“GBK”代表字符编码的转换,D:/CampusGISProject/new_pku_vector/viwpt.shp则是要生成sql脚本的
shp文件.viwpt是创建数据表的表名,>不能少,D:/CampusGISProject/new_pku_vector
/viwpt.sql则是要生成SQL文件的绝对目录
生成成功后命令提示符会显示如下:
Shapefile type: Point Postgis type: POINT[2]
(5)然后我们执行sql语句,执行该SQL语句文件,导入数据到数据库template_postgis中
C:/Program Files/PostgreSQL/8.3/bin>psql -d template_postgis -f D:/CampusGISProject/new_pku_vector/viwpt.sql postgres
其中 template_postgis是数据库名,postgres是该数据库的用户
执行成功后,刷新该数据库,就可以看到新生成的数据表viwpt
这样viwpt.shp数据就成功导入到了postgis中了!!!!!
转载自:https://blog.csdn.net/u012768838/article/details/27407299