Bagaimana saya bisa terhubung ke database PostGIS dari ArcMap menggunakan ArcGIS Desktop 9.3 dan yang lebih baru?
Saya ingin dapat melakukan kueri yang diaktifkan secara spasial dan menerima hasilnya kembali (mis. Gabungan spasial dan non-spasial, pemfilteran dll.) Daripada hanya membuang konten tabel.
Saya tidak ingin menggunakan ekstensi spasial ArcSDE, saya ingin menggunakan ekstensi spasial PostGIS di ArcGIS Desktop.
sumber
Coba lihat posting ini di blog saya: http://www.paolocorti.net/2008/06/06/spatial-database-for-postgres-and-arcgis-users-how-to-choose/
Pada dasarnya Anda memiliki 2 opsi:
Perhatikan bahwa jika Anda memerlukan dukungan Geodatabase (Domain, topologi dll ...) atau dukungan ArcCatalog, solusi pertama (dengan ArcSde) adalah satu-satunya cara untuk pergi saat ini.
Sejauh yang saya dengar (saya tidak langsung mengujinya) di ArcGis Desktop 10 Anda dapat membuat koneksi langsung baca saja ke PostGis tanpa gateway ArcSde.
zigGIS tidak lagi aktif dan situs web sedang offline
sumber
Saya punya beberapa posting tentang melakukannya dengan 9.3. Yang pertama ada di sini dan Anda bisa mendapatkan sisanya dari sana: http://geobabble.wordpress.com/2008/05/28/using-arcsde-93-with-postgresql-part-1/
Saya sudah melakukannya sekali dengan 10.0 dan tidak memiliki masalah. Saya akan mengatakan bahwa, ketika menggunakan PostgreSQL dan PostGIS dengan ArcSDE, saya sangat merekomendasikan untuk tetap menggunakan versi apa pun yang didukung oleh Esri.
sumber
Paling mudah adalah zigGIS dari Obtuse Software . Saat ini Anda harus membayar untuk itu, tetapi kabar di jalan adalah bahwa versi 3 akan menjadi open source .
Menurut Arsip Kode Google pada
ziggis
:dan tautan ke situs web Obtuse Software tampaknya rusak.
sumber
ArcGIS 10.1 SP1 dapat terhubung ke database PostGIS 2.0.0 secara asli, tetapi koneksi bersifat read-only, dan sebagian besar berfungsi sebagai ujung depan pembersih ke lapisan permintaan (pada kenyataannya, itu hanya memuat lapisan sebagai lapisan permintaan). Koneksi database hanya memungkinkan Anda untuk melihat semua tabel dan layer dalam database dalam katalog.
Sebagai alternatif, ada juga arcgis-ogr , yang memungkinkan koneksi ke semua jenis vektor OGR sebagai plugin ArcGIS. . Ini juga hanya-baca saat ini.
sumber
Pertama-tama: Anda hanya akan dapat menggunakan ArcGIS dengan PostgreSQL menggunakan koneksi OLE DB, artinya, Anda hanya akan dapat membaca tabel dan kolom umum (Anda bahkan akan dapat membaca kolom spasial, tetapi ArcGIS tidak dapat melakukan apa pun untuk mereka,
Untuk menggunakan ArcGIS dan PostgreSQL + PostGIS (artinya Anda perlu melihat data spasial), Anda perlu ArcSDE atau ZigGIS .
Dengan kedua opsi ini Anda dapat meminta, mengedit, dan menganalisis data yang disimpan di PostGIS, di dalam ArcMap, atau alat ESRI lainnya.
ArcSDE adalah middleware yang disediakan oleh ESRI, mengubah seluruh alur kerja (menginstal, mengkonfigurasi geodatabse, dll) pekerjaan dan ZigGIS adalah alat desktop (maksud saya, hanya digunakan ketika alat desktop ESRI terlibat).
sumber
Jika Anda memiliki tingkat desktop ArcEditor atau ArcInfo, Anda memiliki kemampuan untuk menggunakan SQL Server Express. Meskipun hanya satu pengguna yang dapat mengedit pada satu waktu, penguncian dan pembukaan kunci mungkin lebih baik - Anda dapat mencobanya terlebih dahulu. Ada banyak dokumentasi tentang bagaimana melakukannya, dan Anda tidak harus menjadi dba - meskipun saya suka postgres. Jangan tersinggung orang-orang QGIS;)
Juga, pastikan bahwa orang penjualan Esri Anda memberi Anda penawaran untuk "ArcGIS Server Workgroup", bukan Enterprise. Lihat di bawah - Anda dapat memiliki 10 koneksi pengeditan bersamaan. Seharusnya lebih seperti $ 3-5k. Harga http://www.esri.com/software/arcgis/arcgisserver/pricing
Lihat juga posting ini untuk penjelasan yang baik tentang lisensi dan tautan tentang SDE dan SQL Server Express ArcSDE
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/What_are_database_servers_in_ArcGIS/003n0000004r000000/
"Anda membuat geodatabase dan melakukan tugas administratif lainnya untuk server basis data melalui simpul Server Database di jendela Katalog atau ArcCatalog. Melakukan administrasi server database dan geodatabanya melalui ArcGIS Desktop berarti tidak ada keahlian perangkat lunak atau administrasi database tambahan yang diperlukan untuk Anda untuk membuat dan menggunakan geodatabases ArcSDE jenis ini.
Koneksi ke geodatabases di server database selalu koneksi langsung; mereka menggunakan file pustaka ArcSDE di klien untuk membuat koneksi. Dalam hal ini, aplikasi klien adalah ArcGIS Desktop di tingkat lisensi ArcEditor atau ArcInfo, ArcGIS Engine, dan ArcGIS Server Workgroup.
Media untuk produk ini mencakup file instalasi untuk SQL Server Express. Setelah Anda membuat instance SQL Server Express dan menjalankan wizard untuk mengaktifkan instance untuk menyimpan geodatabases, pustaka dalam aplikasi klien memungkinkan Anda untuk terhubung dan bekerja dengan server database dan membuat dan bekerja dengan geodatabases pada server database.
Dengan ArcGIS Desktop (ArcEditor dan ArcInfo) dan ArcGIS Engine, Anda dapat mengatur server database dan membuat geodatabases ArcSDE yang dapat diakses oleh beberapa pengguna dan diedit oleh satu pengguna pada satu waktu .
Dengan ArcGIS Server Workgroup menggunakan ArcGIS Desktop, Anda dapat mengatur server database dan membuat geodatabases ArcSDE yang dapat diakses oleh hingga 10 pengguna sekaligus, yang semuanya dapat diedit secara bersamaan . Saat menggunakan server database yang dilisensikan melalui ArcGIS Server Workgroup, Anda juga dapat terhubung ke geodatabases menggunakan aplikasi Web, yang tidak ada batas koneksi. "
sumber
Saya menulis sebuah plugin yang memberi ArcGIS akses ke 50+ format vektor (termasuk PostGIS). Ini masih eksperimental, tetapi Anda dapat mencobanya dan ceritakan bagaimana hasilnya.
Ada keuntungan menggunakan pendekatan ini dibandingkan fungsionalitas bawaan di ArcGIS (lihat FAQ), tetapi sekali lagi, ini masih eksperimental.
Unduh dan instruksi di sini
sumber
Saya telah memantau posting ini dan web yang lebih luas untuk solusi untuk ini karena saya ingin alat serupa. Hari ini saya bertemu solusi saya (kami) melalui RSS feed ke blog James Fee . Dan saya percaya solusi yang Anda cari adalah PgMap by ST-Links .
Saya telah mencoba versi ArcGIS 9.3 dan sangat mengesankan. Masih berjuang dengan pengeditan karena saya masih pemula PostGIS (hal kolom identitas). Itu juga dilengkapi dengan ESRI ramping untuk loader PostGIS dan di atas semua itu GRATIS! [Diuji dengan OpenGeoSuite Community Edition 2.4.1]
sumber
Pergi ke Mulai -> Panel Kontrol -> Kinerja dan Pemeliharaan -> Alat Administratif -> Sumber Data.
Buka tab System DSN.
Klik Tambah.
Gulir ke bawah dalam daftar. Anda harus dapat melihat driver ODBC PostgreSQL Anda di sana jika Anda menginstalnya. Klik driver ODBC PostgreSQL pertama dalam daftar.
Masukkan detail koneksi Anda di formulir. Jika koneksi menggunakan mesin yang sama dengan database PostgreSQL, tulis localhost di bidang server; jika tidak, nama komputer di jaringan. Anda harus membuat beberapa perubahan pada file pg_hba.conf untuk terhubung ke database Anda di jaringan. Baca tentang hal ini di manual PostgreSQL di bagian Autentikasi Pengguna. Setelah ini selesai, klik Finish.
Tambahkan semua driver ODBC PostgreSQL yang Anda temukan dalam daftar dengan cara yang sama.
Klik OK. Anda sekarang dapat terhubung ke database PostgreSQL melalui driver ODBC. Driver hanya perlu diarahkan ke database dengan informasi koneksi.
sumber
Pada era 2011, cobalah ST-Links SpatialKit . Perangkat lunak ini freeware, dan bekerja dengan ArcGIS 9.3 / 10.0 / 10.1 / 10.2.
Unduhan memiliki PDF yang bagus untuk mendokumentasikan kemampuan, yang meliputi melihat, mengedit, dll.
sumber
Saya telah melakukan ini sebelumnya tanpa terlalu banyak masalah menggunakan ArcGIS 10.1 dan 10.2 sayangnya tidak bekerja dengan 9.3 dan postgres 9.2 Saya pikir dari memori.
Saya menggunakan driver dari esri. Masuk ke situs layanan pelanggan ESRI meskipun saya pikir ini telah berubah sejak saya menulis instruksi.
Gulir ke bawah hingga Anda melihat "Perpustakaan Klien PostgreSQLQL (Windows)", berukuran 2,21 MB.
Klik Unduhan
Untuk PostgreSQL / PostGIS dalam file yang diunduh haruslah "pg_client_windows86" set klien perpustakaan yang berisi versi 32 bit yang diperlukan dari libeay32.dll, libiconv-2.dll, libintl-8.dll, libpq.dll, dan ssleay32.dll. Salin ini ke direktori tempat penyimpanan ArcGIS Anda. Di komputer saya menggunakan 10.1 itu adalah: C: Program Files (x86) ArcGISDesktop10.1bin Jika Anda menggunakan windows 32bit itu akan menjadi seperti: C: Program FilesArcGISDesktop10.1bin
Setelah Anda melakukan ini, Anda harus dapat terhubung dan menambahkan data dari database Anda. Untuk menggunakan lapisan kueri data, Anda harus terhubung ke database terlebih dahulu. Di ArcGIS 10.1 Anda harus pergi ke File> Add Data> Add Query Layer
Satu-satunya hal yang harus diperhatikan adalah bahwa data yang dikembalikan harus memiliki bidang unik yang dapat digunakan sebagai kunci utama oleh ArcGIS. Terkadang Anda mungkin perlu menentukannya jika Anda menggunakan lebih dari sekadar permintaan dasar dan ArcGIS tidak dapat menentukan bidang mana yang akan digunakan. Anda dapat melakukannya dengan:
Anda juga dapat menjalankan kueri spasial terhadap basis data postgres dengan relatif mudah meskipun Anda harus membuat bidang id dengan cepat. mis. Berikut adalah contoh melakukan buffer 100km.
Tidak hanya itu, Anda juga dapat menyimpan lapisan kueri apa pun sebagai file lapisan dan meneruskannya melalui beberapa alat ArcGIS standar juga. Saya belum menguji ini terlalu banyak. Jadi menambahkan kolom dan hal-hal seperti itu saya bisa melihat yang menyebabkan kekacauan. Saya pikir Anda bisa membuat panggilan spasial SQL dengan database lain seperti SQLServer dan Oracle juga dengan sedikit mengutak-atik untuk membuat bidang id saat terbang.
Saya melakukan tutorial lengkap beberapa waktu lalu di: http://www.gisuser.org.nz/resources/tips-and-tricks/look-mum-dad-no-hands
sumber
Efektif dengan ArcGIS 10.4, Anda dapat membaca dan menulis ke geometri PostGIS dalam database PostgreSQL yang didukung tanpa perlu ekstensi tambahan apa pun. Saya hanya menggunakan lisensi Advanced untuk ini, tetapi saya percaya lisensi Standar juga dapat terhubung ke database server PG non-geodatabase dan menggunakan ruang kerja itu sebagai tujuan untuk alat-alat pembuatan vektor. Ini lebih rumit, tetapi Anda juga dapat menggunakan klien lisensi Dasar untuk menulis ke tabel menggunakan SQL dengan Python (via
arcpy.ArcSDESQLExecute
). Layers Query Read-only telah menjadi opsi dengan semua level licemse sejak ArcGIS 10.0.sumber
Akankah PostgreSQL 9 bekerja dengan ArcGIS 10?
Untuk Mengedit Postgis ZigGIS 3.0
http://groups.google.com/group/ziggis/browse_thread/thread/8e17f4c2ac57f428?hl=id
Hanya Baca dapat dilakukan melalui ODBC Postgres Drivers yang tepat dan melakukan koneksi langsung di ArcCatalog
sumber
GISquirrel melakukan pekerjaan dengan sebagian kecil dari biaya SDE. Ini mendukung koneksi arcgis ke MSSQL dan PostGIS. Sangat sederhana untuk setup (dapat mengimpor ke postgres dari shapefile / featureeclass) dan mudah untuk pemeliharaan. Untuk sejumlah kecil pengguna yang membutuhkan kemampuan edit multi-pengguna, tidak apa-apa.
Kami menggunakan GISquirrel / Arcgis untuk 'pengguna listrik' GIS kami dan QGIS dapat terhubung ke server PostGIS yang sama untuk 'pengguna dasar' kami, yang menghemat biaya lisensi.
sumber
GISquirrel melakukan pekerjaan dengan sangat baik untuk MSSQLserver, dan saya cukup yakin itu akan bekerja dengan baik untuk Postgres. Saya bekerja di lingkungan ESRI / Qgis campuran, dan saya menggunakan tupai GIS juga untuk mengimpor shapefile dll ke dalam database. Dalam SQLserver GISsquirrel melacak kolom geometri, saya menggunakan informasi ini untuk memperbarui tabel geometry_columns yang digunakan oleh Qgis. Sangat berguna ...
sumber
PgMap digantikan oleh st-links spatialKit dan tidak hanya mendukung PostGIS, tetapi juga mendukung SQL Server 2008. Ia bekerja dengan ArcMap 9.3, dan ArcMap 10. Ini hanya memenuhi kebutuhan Anda. Lihat di www.st-links.com
sumber
Saya percaya Anda memiliki beberapa opsi di luar menggunakan SDE (meskipun saya akan menunjukkan Anda dapat menggunakan PG_Geometry di SDE, karena itu mengakses data melalui perangkat lunak ESRI atau perangkat lunak OS yang kompatibel PostGIS). Anda memiliki ekstensi Interoperabilitas Data ESRI, ZigGIS, dan Anda mungkin dapat menginstal salinan geoserver atau mapserver dan terhubung melalui layanan WMS di ArcGIS. Mirip dengan posting sebelumnya tentang zigGIS dan kebutuhan untuk mengelola kueri melalui pgAdmin, Anda harus menggunakannya untuk membuat kueri Anda dengan geoserver / mapserver. Idealnya, jika Anda menggunakan kembali pertanyaan yang sama, Anda bisa menyimpannya sebagai tampilan di postgresql dan mengakses data dengan cara itu.
sumber
ST-Links SpatialKit adalah Ekstensi ArcMap untuk terhubung langsung ke basis data spasial dengan No ArcSDE, No ArcInfo, No ArcGIS Server.
Menurut Lisensi mereka , biayanya $ 188 CAD, tetapi mereka menyatakan "Kami akan terus mengeluarkan lisensi gratis untuk para pengguna yang tidak mampu membayar biaya lisensi. Lisensi gratis memiliki batas waktu. Jika Anda meminta lisensi gratis, tolong berikan alasannya dalam email permintaan lisensi Anda. "
sumber
Cara mudah menambahkan data PostGIS ke ArcMap adalah dengan menambahkan 'Koneksi Interoperabilitas'. Untuk melakukan ini, 'Ekstensi Interoperabilitas Data' diperlukan.
Itu dianggap ide yang baik untuk menambahkan 'Indeks Numerik' dan 'Kunci Utama' ke Tabel Database PostGIS sebelum membuat koneksi.
sumber