Esri Personal Geodatabase (* .mdb) mit QGIS öffnen?

11

Ist es möglich, eine persönliche Geodatabase von Esri (* .mdb; ArcGIS 10.2) in QGIS 2.6 zu öffnen? Frühere Versionen waren richtig.

David
quelle
3
Haben Sie dies versucht und eine Fehlermeldung erhalten oder fragen Sie, ob eine Option zum Öffnen von ESRI PGDB in QGIS 2.6 verfügbar ist? Die Option ist verfügbar Schicht > Ebenen hinzufügen > Vector - Layer > Datenbank > wählen ESRI Personal Geodatabase als Typ
Joseph
Verwenden Sie eine 64-Bit-Version von QGIS unter Windows?
nmtoken
Ich habe versucht, dies zu tun, erlaube mir jedoch nicht, die Datei qgis.bat mit den Änderungen zu speichern. Irgendeine Idee? Vielen Dank
NandoSC

Antworten:

21

Wenn Sie eine 64-Bit-Version von QGIS unter Windows installiert haben und feststellen, dass Personal GeoDatabases (* .mdb) für Sie nicht mehr funktioniert, gilt diese Lösung möglicherweise. Ich bin eher auf QGIS 2.8.1 als auf 2.6, aber ich gehe davon aus, dass das Problem und damit die Lösung dasselbe sind.

Das zugrunde liegende Problem bezieht sich auf diesen GDAL-Fehler: Problem beim Lesen von MDBs (64-Bit)

Schritt 1

Laden Sie die 64-Bit-Version des ODBC-Treibers herunter: Microsoft Access Database Engine 2010 Redistributable

Wenn Sie keine 32-Bit-Version von Office installiert haben, können Sie einfach die ausführbare Datei ausführen. Wenn Sie jedoch über eine 32-Bit-Office-Installation verfügen, müssen Sie die ausführbare Datei mit der /passiveOption an einer Eingabeaufforderung ausführen

Installieren des 64-Bit Access Database Engine 2010 Weiterverteilbar im passiven Modus

Schritt 2

Suchen Sie die Datei qgis.bat (meine ist C:\OSGeo4W64\bin\qgis.batzum Beispiel in).

Fügen Sie die folgenden zwei Zeilen hinzu:

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

Schritt 3

Öffnen Sie QGIS und ziehen Sie die MDB-Datei auf Ihren Arbeitsbereich

Voila!

nmtoken
quelle
Dies funktionierte gerade für mich unter 64-Bit-QGIS 3.0.0 unter Windows 8.1.
Brian Fisher
7

Vorausgesetzt, Sie haben Microsoft Access Database Engine 64-Bit erfolgreich installiert, können Sie:

Methode 1 (funktioniert mit QGIS 2)

Fügen Sie die folgenden zwei Zeilen hinzu:

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

In Ihrem qgis.bat / qgis-grass7.bat / qgis-ltr.bat / qgis-ltr-grass7.bat vor der letzten Zeile ist das normalerweise so etwas wie

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

[Beachten Sie, dass der Wert der Variablen PGEO_DRIVER_TEMPLATE zwei Prozentzeichen enthält.]

Methode 2 (funktioniert mit QGIS 3)

Im Bereich QGIS-Einstellungen -> Optionen | System | Umgebung Fügen Sie die folgenden zwei Variablen hinzu:

variable name: OGR_SKIP 
value: ODBC

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

und aktivieren Sie das Kontrollkästchen "Benutzerdefinierte Variablen verwenden"

[Beachten Sie, dass in diesem Fall der Wert der Variablen PGEO_DRIVER_TEMPLATE nur ein Prozentzeichen enthält]

Methode 3 (funktioniert sowohl mit QGIS 2 als auch mit QGIS 3)

Legen Sie im Bereich Umgebungsvariablen der erweiterten Windows-Systemeinstellungen die folgenden zwei neuen Variablen als Benutzervariablen oder Systemvariablen fest:

variable name: OGR_SKIP 
value: ODBC

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

[Beachten Sie, dass der Wert der Variablen PGEO_DRIVER_TEMPLATE auch in diesem Fall nur ein Prozentzeichen enthält.]

Andrea Giudiceandrea
quelle
Für mich funktioniert es für ESRI .mdb aber ich bin mir nicht sicher auch für geomedia mdb? Jeder hat Erfahrung mit dieser Art von Dateien
Roberto Marzocchi
1

Die vorgeschlagene Lösung funktioniert auch unter Windows 10. Nur ein weiterer Vorschlag zum Hinzufügen der beiden Zeilen zur Datei qgis.bat.

Die beiden Zeilen werden eingestellt. Daher ist es wichtig, die Zeilen vor dem Start des Befehls hinzuzufügen.

Wahrscheinlich ist es nicht verstanden, aber wenn Sie nicht aufpassen, besteht die Gefahr, dass Sie sich irren.

Roberto Marzocchi
quelle
Da dies die neueste Antwort ist, möchte ich kommentieren, dass es funktioniert, aber ich kann nur die Feature-Classes (Vektorebene) laden, aber ich sehe nicht, wie die in der MDB enthaltenen Tabellen und Beziehungen geladen werden. Feature-Datasets werden ebenfalls ignoriert.
Nanunga