您的位置:首页 > 其它

ESRI File Geodatabase导入PostGIS

2016-04-11 00:27 1986 查看
运行环境

安装GDAL和GDB驱动

将GDB导入PostGIS中

备注

今天尝试将ESRI的GDB文件导入PostGIS,记录下过程。

运行环境

Win10 64bit+PostgreSql 9.5.1+PostGIS 2.2.1

安装GDAL和GDB驱动

主要思路是使用GDAL中的ogr2ogr读取GDB并导入PostGIS。

为了避免编译GDAL的麻烦,一开始按照《PostGIS in Action》第二版4.3节中的介绍,在Windows平台下使用FWTools,但是没有导入成功。安装FWTools后,使用ogrinfo命令后显示支持的格式不包括GDB。

查看FWTools官网后发现已经停止维护,改用OSGeo4W。下载并运行OSGeo4W安装程序,先选择Express Destop安装



由于这里只需要GDAL,所以只勾选了GDAL选项



点击下一步开始下载,由于网络问题可能会下载失败,可以重新运行安装程序会继续下载。

需要注意的是:GDAL的默认安装并不包括GDB驱动(参考),因此需要再次运行OSGeo4W安装程序选择Advanced安装模式,在libs中将GDB驱动勾选并下载安装



安装好后运行OSGeo4W Shell,输入

ogrinfo --formats


可以看到已经提供了对GDB的支持



将GDB导入PostGIS中

事先在PostGIS中新建了一个名为nyc的地理数据库,参考这个使用如下命令将D:/Data/JCData.gdb中的所有数据导入到nyc数据库中。

ogr2ogr -f "PostgreSQL" PG:"host=localhost port=5432 user=postgres password=XXX dbname=nyc" D:/Data/JCData.gdb -overwrite -progress --config PG_USE_COPY YES


-overwrite 表示会覆盖已经存在的记录

-progress 表示显示进度

–config PG_USE_COPY YES 将极大改善导入速度

备注

GDAL中较新的版本GDB驱动已经可以支持9.X版本的ArcGIS创建的GDB文件读取了,但是依然有一些缺点

GDB中的数据只能读取

不能使用空间索引

不能读取压缩格式的数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: