PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件

一. 建库以及准备工作:(使用pgAdmin4直接建库)

打开pgAdmin4,如下图所示create–>Database

PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
输入database的名字,如下图,输入完成即可选择save进行保存。这样基本上就可以了,其他选项可以根据自身需要进行选择。

PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
给新建的库添加扩展,需要登录psql进行操作:
PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
图中1:选择自己对应的server,Database等,如果不需要更改直接回车进入下一项,如果需要更改就需要在其后面填写修改的内容。如图中所示,我们要进入到需要扩展的Database中,所以修改了Database一项。
图中2:这四条语句就是进行扩展的语句,当然如果只是将shp文件通过PostGIS导入到库中,只要第一句就可以完成了shp导入到的数据库非空间数据库。建立空间数据库,重新导
入到新建的库中。

打开PostGIS设置链接
PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
4.1点击 view connection details…进行链接设置。
4.2输入对应的用户名,密码,PostgreSQL服务器地址(如果是本机就直接localhost),端口(默认5432),需要导入shp文件的Database。这些输入完后,点击OK。
4.3在Log Window中出现Connectionsucceeded说明链接成功。就可以进行导入文件操作了。
二、 导入shp文件

进行参数设置:
PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
1.1.点击Options进入参数设置界面。
1.2.首先设置导入的字符编码,这个基本上都是GBK,当然这个也要看自己需要,设置成UTF-8也行。
1.3.这一项可勾选也可不勾选,看实际情况。如果非Multi类型,才勾选最后一项。一般非多义类型,所以一般要勾选。
添加文件进行导入:
PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
2.1. 点击Add file 进入文件选择页面,选择需要导入的.shp文件,可以选择多个文件进行批量导入。
2.2. 文件选择完,修改SRID(坐标系)4326是经纬度的WGS-84坐标系,也可以选择墨卡托坐标系(3857),这个根据实际情况。
2.3. 点击Import开始导入,这时会出现进度条显示导入进度。
2.4. 当Log Window 中出现Shapefile import completed.说明导入成功。
三、 导入后查看数据

PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
1. 打开pgAdmin4展开对应的Database
2. 展开Schemas找到在导入时选择的Schema,上图中我们选择的Schema是public,对应生成的tablename是veg_py。
3. 在Schemas下选择public 然后展开找到Tables展开并找到我们需要的table,右击选择View Data 即可展示数据。

四、 可能出现的错误:

Failedinpgui_exec(): 错误: 函数addgeometrycolumn(unknown, unknown, unknown,unknown, unknown, integer) 不存在。
解决方案:shp导入到的数据库非空间数据库。建立空间数据库,重新导入新建的空间库中。
如,在sql或psql console中输入’create extension postgis;’
Unableto convert data value to UTF-8 (iconv reports “Illegal bytesequence”). Current encoding is “UTF-8”. Try “LATIN1”(Western European), or one of the values
解决方案:打开Options 将编码改为 GBK (中文),其他语言请设置对应的编码。如果改成GBK还不行,试试gb18030编码
dbffile (.dbf) can not be opened.
解决方案:shp文件路径不能太深,且路径名称不能有中文.
---------------------
作者:凌醉天
来源:CSDN
原文:https://blog.csdn.net/u013420816/article/details/53572085
版权声明:本文为博主原创文章,转载请附上博文链接!

上一篇:Egret的Shape


下一篇:验证航行数据