Apakah mungkin untuk terhubung ke ArcSDE menggunakan QGIS?

13

Adakah yang mengetahui adanya plugin, atau cara lain untuk menghubungkan dan melihat data dari database ArcSDE di desktop QGIS?

Zachary
sumber
Anda dapat terhubung langsung ke database yang mendasarinya (PostGIS, Oracle atau personal geodatabase), seharusnya tidak perlu (dan mungkin tidak ada cara) untuk menggunakan ArcSDE sebagai perangkat tengah.
underdark
Bagaimana MapServer melakukannya? Berbasis C dan OGR, begitu juga QGIS. Mungkin ada cara seperti yang dikatakan Matt Wilkie.
Duarte Carreira
Jika data spasial disimpan SDEBINARYdaripada oracle asli SDO_GEOMETRYatau ST_GEOMETRYtipe data, saya pikir satu-satunya cara untuk membacanya adalah melalui ArcSDE? Kami memiliki masalah ini dengan Geoserver di mana hanya pengaturan tabel dengan SDO_GEOMETRYdapat dilihat dengan koneksi Oracle, untuk data warisan kami yang lain, kami harus menggunakan plugin ArcSDE.
kes

Jawaban:

4

Dimungkinkan untuk membangun jembatan melalui GDAL / OGR 's sopir ArcSDE . Ini tidak dikompilasi secara default dan membutuhkan beberapa bagian dari ESRI SDE C API untuk terhubung. Jadi untuk membangun driver ini Anda harus memiliki salinan kit pengembang API SDE C dari ESRI. Jika ingatanku, ada driver sde pra-dikompilasi melayang yang dapat menggunakan ArcInfo Workstation diinstal pada mesin lokal di tempat SDK.

Sumber:

matt wilkie
sumber
Saya pikir hal ArcInfo hanya untuk membaca ArcInfo cakupan biner dari GDAL. Sudah lama ditinggalkan.
Howard Butler
6

Saya senang mengatakan saya membuatnya bekerja! Saya menggunakan QGIS 1.7 dari OSGeo4W:

  1. dapatkan ogr_sde.dll(kompilasi dari Tamas, Anda juga memerlukan beberapa file ArcSDE SDK)
  2. ganti yang gdal18.dlldigunakan oleh qgis dengan yang Anda kompilasi di atas
  3. menempatkan ogr_sde.dlldiC:\OSGeo4W\bin\gdalplugins\1.8
  4. buat .vrtfile dengan koneksi ArcSDE Anda dan detail fitur kelas
  5. tambahkan vrt ke QGIS, dan voila!

Masalahnya, ogr membutuhkan waktu lama untuk terkoneksi. Tetapi melihat itu OK. Hanya bagian penghubungnya yang terlalu lambat. Mungkin seseorang akan mengetahui parameter untuk koneksi untuk mempercepatnya.

EDIT: lupa Anda juga harus menyalin DLL berikut dari kompilasi Anda pada langkah 1: xerces-c_28.dll, spatiallite.dlldan openjpeg.dll. Anda juga perlu libs ArcSDE: sde.dll, sg.dll, dan pe.dll. Masukkan saja C:\OSGeo4W\bin.

EDIT 2: info lebih lanjut di sini: http://www.qgis.org/wiki/Connecting_to_ArcSDE_databases .

EDIT 3: waktu koneksi tidak lagi menjadi masalah. Hanya masalah string koneksi yang benar di vrt. Lihat tautan untuk contoh.

Duarte Carreira
sumber
Jika Anda ingin raster SDE, Anda juga menginginkan gdal_sde.dll ...
Howard Butler
Menanggapi keluhan, saya baru saja menghapus tautan Tamas, yang pergi ke sumber yang bagus ketika awalnya diposting tetapi sekarang pergi ke halaman 404 yang mengiklankan beberapa konten yang tidak menyenangkan. Apakah Anda mengetahui situs saat ini untuk itu?
Pops
2

Jika Anda menggunakan Postgres sebagai DB backend dari ArcSDE, Anda memiliki opsi untuk menyimpan data spasial dalam ST_Geometry (format spasial SDE) atau PG_Geometry (format spasial PostGIS). Jika Anda menyimpan data dalam DB yang diaktifkan PostGIS dan menentukan opsi PG_Geometry ketika Anda mengimpor data (secara opsional Anda dapat mengedit dbtune, saya yakin, untuk menetapkan PG_Geometry sebagai default), Anda akan dapat terhubung ke data melalui koneksi SDE atau melalui klien desktop yang dapat terhubung langsung ke PostGIS (seperti QGIS)

wilsongis
sumber
-3

Saat ini tidak ada cara. Jika Anda menggunakan salah satu alat FOSS4G berbasis Java, Anda harus menggunakan konektor SDE di geotool. Saya pikir ini adalah bagaimana geoserver terhubung ke SDE.

Saat ini tidak ada penyedia data di dunia C ++ yang terhubung ke QGIS

TheSteve0
sumber
Hai teman-teman - sebelum Anda downvote lebih ini. Silakan lihat tanggal ketika saya menjawab ini.
TheSteve0
Saya menduga bahwa ini sedang downvoted karena ini adalah jawaban yang tampaknya tidak lagi valid. Jika tidak lagi valid, maka saya akan merekomendasikan menghapusnya. Jika masih, atau bisa direvisi menjadi sekali lagi, arus maka itu akan membantu membalikkan downvotes.
PolyGeo