ArcGIS連接Postgres 數據庫


1 引言

此前在使用ArcGIS的過程中,一般使用文件方式對數據進行管理,后面也有使用 GeoDatabase 數據庫對數據進行管理,但是這種管理方式也存在一些弊端,特別是在數據傳輸與共享方面,非常的不方便。 ArcGIS Spatial Database Engine(SDE)是一種空間數據引擎,通過這個中間件能夠使得傳統的DBMS數據庫能夠存儲和管理空間數據。這種空間數據庫的管理主要有如下優勢:

  • 便於數據的傳輸與共享

    只要是在同一個局域網內的用戶,通過對空間數據庫的連接,便可以對數據進行查看、編輯,實現了數據共享

  • 便於數據的處理

    ArcGIS SDE 的這個空間擴展提供了很多的空間查詢與分析的空間函數,可以使用SQL語句對數據庫中的數據進行查詢、處理、

    分析,大大提高了工作效率

image

常用的主流數據庫如 Oracle , SQL server ,Postgres SQL 均可以通過SDE和ArcGIS建立聯系,實現對空間數據的儲存和管理,這里以Postgres數據庫為例。

系統環境: windows 10

軟件環境:

  • ArcGIS 10.4.1
  • Postgres 9.4

2 步驟

2.1 安裝相關軟件環境

這里的ArcGIS 和Postgres版本必須要對應,例如,我的ArcGIS 10.4版本就只能支持Postgres 9.2-9.4版本

2.2 將ST_Geometry.dll拷貝到相應的數據庫位置

這里ST_Geometry.dll文件位於一般位於ArcGIS Desktop\Server 的安裝目錄下面

C:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\Windows64

數據庫的位置這里是指Postgres的安裝目錄

D:\Program Files\PostgreSQL\9.4\lib

2.3 ArcGIS 中創建地理數據庫

工具:【Data Management Tools】->【GeoDatabase Administration】->【Create Enterprise GeoDatabase】

image

創建好數據庫后,即可在數據庫中查看,可以看到數據庫中多了一個 sde的數據庫,這個就是剛剛新創建的空間

image

2.4 連接新的空間數據庫

創建完空間數據庫后,還需要在ArcGIS中對空間數據進行連接,才能對空間數據庫進行查看、編輯

連接數據庫主要是在ArcGIS Catalog中進行 ,具體地址為:【Database Connections】->【Add Database Connections】

image

點擊OK,即可完成連接,連接完成后,便可像處理文件夾或者本地的GeoDatabase數據庫那樣對數據進行處理。

3 常見問題

3.1 創建要素失敗

postgresql中創建要素類提示

 Database user name and current user schema do not match

解決方式: 用戶使用的是postgres用戶來連接SDE,這樣可以連接但是創建不了要素類,必須使用sde

4 參考文章

  1. arcgis10.1連接postgres總結 http://blog.sina.com.cn/s/blog_54b09dc90101f3vm.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM