Membuka Esri Personal Geodatabase (* .mdb) menggunakan QGIS?


11

Apakah mungkin untuk membuka Esri Personal Geodatabase (* .mdb; ArcGIS 10.2) di QGIS 2.6? Versi sebelumnya benar.


3
Sudahkah Anda mencoba ini dan menerima kesalahan atau Anda bertanya apakah ada opsi untuk membuka ESRI PGDB di QGIS 2.6? Opsi ini tersedia di Layer > Add Layer > Add Vector Layer > Database > pilih ESRI Personal GeoDatabase sebagai Type
Joseph

Apakah Anda menggunakan QGIS versi 64 bit pada Windows?
nmtoken

Saya sudah mencoba melakukan ini tetapi tidak mengizinkan saya untuk menyimpan file qgis.bat dengan perubahan. Ada ide? Terima kasih
NandoSC

Jawaban:


21

Jika Anda telah menginstal QGIS versi 64-bit pada Windows dan Anda menemukan Personal GeoDatabases (* .mdb) tidak berfungsi lagi untuk Anda, maka solusi ini mungkin berlaku; Saya menggunakan QGIS 2.8.1 daripada 2.6, tapi saya berasumsi bahwa masalah dan solusinya sama.

Masalah mendasar yang terkait dengan bug GDAL ini: Pembacaan MDB bermasalah (64-bit)

Langkah 1

Unduh driver ODBC versi 64-bit: Microsoft Access Database Engine 2010 Redistributable

Jika Anda tidak memiliki versi 32-bit office yang diinstal, Anda bisa menjalankan executable. Namun jika Anda memiliki instalasi kantor 32-bit, Anda harus menjalankan executable dari prompt perintah menggunakan /passiveopsi

Menginstal 64-bit Access Database Engine 2010 Redistributable dalam mode pasif

Langkah 2

Temukan file qgis.bat (milik saya C:\OSGeo4W64\bin\qgis.batmisalnya).

Tambahkan dua baris berikut:

set OGR_SKIP=ODBC
set PGEO_DRIVER_TEMPLATE=DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%%s

Langkah 3

Buka QGIS dan seret file mdb ke ruang kerja Anda

Voila!


Ini hanya bekerja untuk saya pada QGIS 3.0.0 64-bit pada Windows 8.1.
Brian Fisher

7

Asalkan Anda telah berhasil menginstal Microsoft Access Database Engine 64 bit, Anda dapat:

Metode 1 (bekerja dengan QGIS 2)

tambahkan dua baris berikut:

set OGR_SKIP=ODBC
set PGEO_DRIVER_TEMPLATE=DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%%s

di qgis.bat / qgis-grass7.bat / qgis-ltr.bat / qgis-ltr-grass7.bat sebelum baris terakhir, yang biasanya seperti

start "QGIS" /B "%OSGEO4W_ROOT%"\bin\qqis...

[perhatikan bahwa ada tanda dua persen dalam nilai variabel PGEO_DRIVER_TEMPLATE]

Metode 2 (bekerja dengan QGIS 3)

Di panel Pengaturan QGIS -> Opsi | Sistem | Lingkungan menambahkan dua variabel berikut:

variable name: OGR_SKIP 
value: ODBC

variable name: PGEO_DRIVER_TEMPLATE 
value: DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s

dan centang kotak centang "Gunakan variabel khusus"

[perhatikan bahwa dalam kasus ini hanya ada satu persen masuk nilai variabel PGEO_DRIVER_TEMPLATE]

Metode 3 (bekerja dengan QGIS 2 dan QGIS 3)

Pada panel Variabel Lingkungan dari Pengaturan Sistem Lanjut Windows, tetapkan dua variabel baru sebagai Variabel Pengguna atau Variabel Sistem:

variable name: OGR_SKIP 
value: ODBC

variable name: PGEO_DRIVER_TEMPLATE 
value: DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s

[perhatikan bahwa juga dalam hal ini hanya ada satu persen masuk nilai variabel PGEO_DRIVER_TEMPLATE]


Bagi saya ini berfungsi untuk ESRI .mdb tapi saya tidak yakin juga untuk geomedia mdb? Siapa pun yang memiliki pengalaman tentang file semacam ini
Roberto Marzocchi

1

Solusi yang diusulkan berfungsi dengan baik juga di windows 10. Hanya saran lebih lanjut untuk menambahkan dua baris ke file qgis.bat.

Dua baris diatur. Jadi penting untuk menambahkan baris sebelum dimulainya perintah.

Mungkin itu tidak dapat dipahami tetapi jika Anda tidak hati-hati, ada risiko salah.


Karena ini adalah jawaban yang paling baru, saya ingin berkomentar bahwa itu berfungsi tetapi saya hanya bisa memuat kelas fitur (layer vektor) tapi saya tidak melihat cara memuat tabel dan hubungan yang terkandung di dalam mdb. Kumpulan data fitur juga diabaikan.
nanunga
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.