irpas技术客

使用ArcGIS10.2连接PostgreSQL创建空间数据库并进行要素编辑_一指流沙叹风华_arcgis postgresql

网络投稿 5816

记一次使用ArcGIS10.2连接postgresql创建空间数据库并编辑: 刚开始下载了postgres12版本的,使用ArcGIS10.2连接不上,原来ArcGIS10.2只能连接PostgreSQL9.1和9.2版本的,所以想用ArcGIS10.2连接的话,要装9.1或9.2版本的PostgreSQL。最后想尝试使用geoserve发布arcmap创建的sde数据库里的数据,这个数据是arcmap批量导入的数据,结果有点问题,

1、数据准备

链接:https://pan.baidu.com/s/1wbY4GO7Nog70Jl9yVlaUxw 提取码:1234 网盘内的数据有:PostgreSQL9.2版本64位、postgis2.1版本、支持arcgis32位连接的dll、arcgisserver10.2授权文件。

2、安装PostgreSQL9.2

需要先安装PostgreSQL,因为postgis是PostgreSQL的扩展插件,点击postgresql-9.2.24-windows-x64.exe安装PostgreSQL,参数默认即可。

3、安装postgis插件

双击postgis-bundle-pg92x64-setup-2.1.3.exe安装postgis插件,安装时记得勾选 Create spatial database,然后安装的目录要和PostgreSQL安装目录一样,用户名密码和PostgreSQL一样即可;最后的弹出框都选择是。

4、复制dll文件

这一步的目的是使arcgis可以连接操作postgresql数据库。 1、因为ArcGIS10.2是32位的,所以需要32位的PostgreSQl 9.2对应的一些dll库文件才可以连接,把dll32文件夹里的五个dll文件(libeay32.dll、libiconv-2.dll、libintl.dll、libpq.dll、ssleay32.dll)复制到ArcGIS Desktop安装目录的bin目录下C:\Program Files (x86)\ArcGIS\Desktop10.2\bin,如下图所示:

2、将ArcGIS Desktop安装目录C:\Program Files (x86)\ArcGIS\Desktop10.2\DatabaseSupport\PostgreSQL\9.2\Windows64下的st_geometry.dll文件复制到PostgreSQL 9.2安装目录C:\Program Files\PostgreSQL\9.2\lib下,如下图所示:

5、创建空间数据库

打开arcgis10.2创建空间数据库: 在创建界面输入数据库的名称账户名密码,把下载文件中的.ecp授权文件加载进去。 打开postgresSql数据库,可以找到创建的数据库,在postgresql中,执行sql语句: create extension postgis; create extension postgis_topology; create extension fuzzystrmatch; create extension postgis_tiger_geocoder;

6、连接数据库

点击catalog里的Add Database Connection打开连接界面,用户名上一步创建的sde管理员,数据库选择上一步创建的test。

7、编辑数据

1、可以新建一个要素类或者使用import直接导入已有数据。 2、选中需要编辑的要素直接拖到图层中,开启编辑,这时可能会报一个错误: 遇到这个错误,需要在待编辑的要素类进行注册一下:右键菜单中的Manage中选择Register as versioned; 这时候就可以编辑了:

8、发布服务问题

尝试使用geoserver进行发布,貌似发布不成功,也不是不成功而是缺少一个geoserve认识的geometry字段类型,导致发布的数据不能显示图形,而通过postgis自带的shp导入工具的话,可以使用geoserver发布成功显示图形。如下图:第一张图是通过postgis导入的shp数据表内容,第二张图是通过arcgis导入的,arcgis导入的几何字段是st_geometry有所不同,猜测一下可能这个只是arcgis能识别的几何类型,在复制dll的时候,把arcgis对postgis支持的dll放入postgresqsl安装目录的lib下,就是支持post数据库在arcmap中的空间图形显示。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #arcgis #postgresql