Installieren der File Geodatabase-Unterstützung (* .gdb) in QGIS?

158

Ich habe ungefähr 2 Tage damit verbracht, den Weg zum Öffnen von GDB (Esri-Geodatabase) in QGIS (oder einer anderen Open-Source-Software) zu finden, aber immer noch ohne Erfolg.

Ich habe das neueste OSGeo4W-Installationsprogramm heruntergeladen und das Setup ausprobiert - Express-Desktop-Installation - alle Pakete sowie die erweiterte Installation inkl. Gdal-filegdb.

Können Sie eine detailliertere Vorgehensweise beschreiben, einschließlich der Installation und des Öffnens von .gdb in QGIS (OSGeo4W-Installation)?

Miro
quelle
1
Welche Version von gdal benutzt du?
Nathan W
Zuerst habe ich osgeo4w-setup - Express Desktop Install - installiert, womit ich die neueste Bibliothek zur Installation heruntergeladen habe. In "Advanced Install" habe ich gdal 1.9.1-RC2-1 und 1.9.0-3 ausprobiert . Im Gespräch über gdal-filegdb gibt es nur 1.9.0-1 Version in diesem Moment.
Miro
In welcher Version von ArcGIS wurde Ihre File GDB erstellt?
Holen Sie sich Spatial
2
Nun, dies kann das Problem sein - "Die Datei GDB muss ArcGIS Version 10 sein, 9.3.1 wird nicht unterstützt." - Ich kenne die Version von ESRI File Geodatabase (FileGDB) nicht. Ich habe gerade Daten erhalten. Ich werde einige Daten in Version 10 mit meiner Installation finden und testen und es wissen lassen.
Miro
2
Haben Sie versucht, den Schritten zu folgen und zu sehen, wie weit Sie kommen? Nur weil der Link zwei Jahre alt ist, heißt das nicht, dass er noch nicht relevant ist. Soweit ich mich erinnern kann, ist die Installation für 2.0.1 sehr ähnlich, wenn nicht identisch mit den Anweisungen in der Antwort.
MAJ742

Antworten:

178

Update Dezember 2017

Jetzt können Sie die .gdb-Datei (Verzeichnis) einfach per Drag & Drop in QGIS ziehen. Dies ist nur ein Lesezugriff auf File-Geodatabases. Wenn Sie Schreibrechte benötigen, lesen Sie bitte weiter.

Update Juli 2015

Es ist an der Zeit, diese Antwort etwas aktueller zu gestalten, da sich einige Elemente der FileGDB-Unterstützung in QGIS geändert haben. Ich führe jetzt QGIS 2.10.0 - Pisa aus. Es wurde mit dem OSGeo4W-Installationsprogramm installiert.

Was sich geändert hat, ist, dass bei der Grundinstallation von QGIS der schreibgeschützte Zugriff auf File GDB standardmäßig mit dem Open FileGDB-Treiber aktiviert wird. Das Guthaben für die erstmalige Kenntnisnahme muss @SaultDon gutgeschrieben werden.
Der Lese- / Schreibzugriff kann mithilfe der FileGDB-Treiberinstallation über die OGR_FileGDB-Bibliothek aktiviert werden. Die Bibliothek muss entweder bei der Installation von QGIS oder einzeln mithilfe des folgenden Prozesses aktiviert werden. Weitere Details zu den Treibern finden Sie weiter unten:

  • FileGDB-Treiber : Verwendet das FileDB-API-SDK von ESRI - Lesen / Schreiben in FGDBs von ArcGIS 10 und höher
  • OpenFleGDB-Treiber : Verfügbar in GDAL> = 1.11 - Schreibgeschützter Zugriff auf FGDBs von ArcGIS 9 und höher

Wenn Sie eine Vektorebene hinzufügen, wählen Sie einfach die aus, die Source Typedem zu verwendenden Treiber entspricht.
ESRI FileGDB-Treiber Esri FileGDB-Treiber

Öffnen Sie den FileGDB-Treiber Öffnen Sie den FileGDB-Treiber

Im folgenden Prozess werden die Schritte zur Installation von QGIS über das OSGeo4W-Installationsprogramm detaillierter dargestellt. Stellen Sie sicher, dass die Bibliothek OGR_FileGDB installiert ist, und laden Sie dann Layer aus einer File-Geodatabase.

  1. Laden Sie OSGeo4W herunter und führen Sie es osgeo4w-setup-x86.exefür 32- Bit- oder osgeo42-setup-x86_64.exe64-Bit- Versionen aus .

  2. Wählen Sie Advanced Install und dann Install from Internet. Wählen Sie Ihr Root- und lokales Paketverzeichnis und dann Ihren Verbindungstyp, in meinem Fall "Direktverbindung". Sobald Sie auf "Weiter" klicken, wird ein Bildschirm mit einer Reihe von ausgeblendeten Menüs angezeigt. Wählen Sie Installationspakete

  3. Erweitern Sie das Menü "Desktop". Suchen Sie den Eintrag für "qgis: Quantum GIS (desktop)". Ändern Sie in der Spalte "Neu" den Eintrag von "Überspringen", um Version 2.10.0-1 anzuzeigen. Wählen Sie QGIS-Installationseintrag

  4. Erweitern Sie das Menü "Libs". Suchen Sie den Eintrag für "gdal-filegdb: OGR FileGDB Driver". Ändern Sie in der Spalte "Neu" den Eintrag von "Überspringen", um Version 1.11.2-1 anzuzeigen. Wählen Sie GDAL File GDB Driver

  5. Sobald Sie auf Weiter klicken, werden QGIS und alle zugehörigen Bibliotheken installiert. Sobald dies abgeschlossen ist, öffnen Sie Quantum GIS und wählen Sie "Vektordaten hinzufügen". Ändern Sie die Option in "Verzeichnis". Hier wählen Sie den Treiber wie oben gezeigt aus. Wählen Sie das FileGDB-Verzeichnis und den Treiber

  6. Navigieren Sie zur File Geodatabase und wählen Sie das Verzeichnis aus. Klicken Sie auf "Öffnen" Wählen Sie den Speicherort für File GDB

  7. Wählen Sie eine Vektorebene und drücken Sie "Ok". Bitte beachten Sie, dass die FileGDB-API keine Rasterbilder unterstützt . Wählen Sie Vektorebene

  8. Wie Sie sehen, wird die ausgewählte Ebene geladen. Mit dem Esri-Treiber ist die Bearbeitung möglich. Wenn Sie den Open FileGDB-Treiber verwenden, sind die Daten schreibgeschützt. Geladene Vektorebene in QGIS

  9. Als Referenz finden Sie hier das Fenster "Über" aus meiner Installation von QGIS, in dem die Versionen der Software und die verwendete GDAL / OGR-Bibliothek angezeigt werden. QGIS About Window

Diese Installation wurde auf einem Windows 7 64-Bit-Computer durchgeführt. Bei früheren Installationsprogrammen gab es einige inkonsistente Ergebnisse. Dies hat sich möglicherweise mit dem Wechsel zu den 32- oder 64-Bit-Installationsprogrammen geändert. In diesem Thread bei OSGeo werden einige alte Probleme erörtert, auf die Menschen gestoßen sind: Thread

Holen Sie sich Spatial
quelle
1
FileGDBAPI.dllist Teil des gdal-filegdbPakets und sollte bereits in installiert sein %osgeo4w_root%\bin. Leider reicht das auf meinem System auch nicht aus.
Matt Wilkie
4
Ich habe den Fehler gefunden und es ist ein Rätsel: Das FileGDB SDK unterstützt keine benutzerdefinierten Koordinatensysteme ( gdal # 4578 ). Man hofft, dass dies keine langlebige Einschränkung ist; Stimmen Sie für die Korrektur
matt wilkie
5
@danagerous - Diese Antwort wurde geschrieben, als QGIS 1.8die aktuelle Installationsversion war. Wie Sie gezeigt haben, ist die aktuelle Version jetzt bis zu 2.2.0. Der Prozess und die Schritte, mit denen sichergestellt wird, dass die Bibliothek installiert wird, bleiben gleich, Sie möchten jedoch immer die aktuellste Version verwenden, die für beide QGISund die gdal-fgdbBibliothek verfügbar ist .
Holen Sie sich Spatial
1
Sehr schön, danke ... Dokumente wie dieses sind unerlässlich, wenn Sie nur sofort einsatzbereit sein müssen.
T. Wayne Whitley
1
Sie können die .gdb-Datei auch einfach per Drag & Drop in QGIS ziehen.
Tudorbarascu
42

Wenn QGIS unter GDAL 1.11.0 ausgeführt und kompiliert wird, bietet es jetzt native FileGDB-Unterstützung über den OpenFileGDB-Treiber .

Um eine Geodatabase in QGIS zu öffnen, müssen Sie "Vektorebene hinzufügen", "Quelltyp = Verzeichnis" und als Quelle "OpenFileGDB" oder "ESRI FileGDB" auswählen. Navigieren Sie dann zum gewünschten * .gdb-Ordner, drücken Sie auf "Öffnen", und die Ebenen werden in Ihr Inhaltsverzeichnis geladen.

Es gibt einige aktuelle Einschränkungen, zum Beispiel, dass es nicht möglich ist, in eine FileGDB zu schreiben, aber es werden FileGDBs <= 10.0 unterstützt, was ein ziemlicher Bonus und "benutzerdefinierte Projektionen" sind.

Die in Arbeit befindliche, rückentwickelte Spezifikation ist auf GitHub für den OpenFileGDB-Treiber verfügbar.

SaultDon
quelle
1
Vielen Dank, dass Sie dies gepostet haben ... es ist viel kürzer als die andere Antwort (was ich auch sehr schätze, aber wenn es nicht mehr nötig ist, all diese Schritte
durchzugehen
16

Wenn Sie einen Mac verwenden, können Sie den filegdb-Treiber mithilfe dieser Anweisungen von Grund auf neu kompilieren .

UPDATE: Seit dieser Antwort sind 2 Jahre vergangen. Versuchen Sie es jetzt: https://github.com/OSGeo/homebrew-osgeo4mac . Wie viele jetzt sagen, können Sie auch den OpenFileGDB-Treiber verwenden, der den nicht verwendet ESRI-Binärdateien, um dies zu erreichen. Bitte beachten Sie, dass es sich um ein Projekt handelt, das die Funktionsweise der Spezifikation umgedreht und nicht ESRI-sanktioniert hat (es ist immer noch großartig, Alternativen zu haben, und es stellt eine erstaunliche Arbeit dar).

Ragi Yaser Burhum
quelle
1
Die verlinkte Seite verlässt sich auf ihren ersten Link ("SDK von der ESRI-Website herunterladen"), der jetzt tot ist.
Pavel V.
Nun, die Antwort war aus dem Jahr 2012. :) In den letzten drei Jahren haben sich viele Änderungen ergeben. Mit Homebrew können Sie ohne besondere Magie kompilieren, und es ist auch in der OSGeo Windows-Distribution verfügbar.
Ragi Yaser Burhum
1
Könnten Sie Anweisungen zum Kompilieren mit Homebrew geben? Insbesondere - ist die Homebrew-Installation mit dem KyngChaos gdal-complete-Installationsprogramm kompatibel?
Simbamangu
Wenn Sie Homebrew verwenden, sollten Sie sich von den KyngChaos-Binärdateien fernhalten. Andernfalls kann es zu Problemen bei der Kompilierung kommen, da Sie am Ende mehrere Versionen von gdal haben.
Ragi Yaser Burhum
5
  • Laden Sie das OSGEO4W-Setup herunter und führen Sie es aus (ich empfehle die 32-Bit-Version)

  • Führen Sie es einmal mit der Desktop-Installationsoption aus, um QGIS (und alle anderen gewünschten Desktop-Programme) zu installieren.

  • Führen Sie anschließend das OSGEO4W-Setup erneut über das Startmenü aus, wählen Sie Erweiterte Installation und fahren Sie mit dem Teil des Setups fort, in dem Sie Pakete auswählen. Scrolle runter zum "gdal-filegdb" -Paket und klicke dort, wo in diesem Screenshot "Keep" steht:

Bildbeschreibung hier eingeben

Dort steht "Keep", da ich das Paket bereits installiert habe. Klicken Sie darauf, bis der Text dort mit der "Current" -Nummer links davon übereinstimmt.

  • Klicken Sie auf Weiter. Sie müssen einigen Lizenzbestimmungen zustimmen. Beenden Sie dann die Installation und sind fertig.
Dan C
quelle
Hey, danke, sollte ich 32 verwenden, obwohl ich 64-Bit-Fenster verwende?
Pitcherofnectar
Die 32-Bit-OSGEO-Installation funktioniert unter 64-Bit-Windows-Versionen einwandfrei. Das verwende ich unter Win7 x64, und alles funktioniert. Die 64-Bit-Installation von OSGEO funktioniert zwar auch, aber viele der Pakete dafür sind unterschiedlich, und ich habe mit einigen von ihnen Probleme gehabt.
Dan C
Ich hoffe du hast deine Probleme im Bugtracker gemeldet . Zu Ihrer Information, es gibt auch einige 32-Bit-Probleme (zum Beispiel wegen älterer Qt-Bibliotheken, die Probleme mit komplizierten Geometrien haben). YMMV
Matthias Kuhn
5

Ich hatte vor ungefähr 3 Monaten ein ähnliches Problem / eine ähnliche Frage (siehe: qgis 2.8.1 arcgis filegdb unvollständige Liste in der Win-Version )

Vor ein paar Tagen habe ich von 2.8.x auf 2.10.1-Pisa umgestellt, in der Hoffnung, die in meiner Frage beschriebenen Probleme mit der File-Geodatabase loszuwerden. leider ohne erfolgreich zu sein.

Was ich seitdem herausgefunden habe, ist: Es scheint immer noch ein Problem mit benutzerdefinierten Koordinatensystemen zu geben! Meine Tests mit einer mit arcgis 10.1 und einer anderen mit arcgis 10.3 auf verschiedenen PCs erstellten Datei haben ergeben, dass der Versuch, eine Datei zu öffnen, die nur Feature-Classes mit benutzerdefiniertem CRS enthält, den folgenden Fehler zurückgibt:
" Ungültige Datenquelle: D: \ xxxx \ yyy \ zzzz.gdb ist keine gültige oder erkannte Datenquelle "

... beide Treiber ( FileGDB-Treiber , OpenFileGDB-Treiber ) geben den gleichen Fehler zurück!
während Can FileGDB SDK - Systeme individuelle koordinieren unterstützen gemacht werden? Artikel und einige der Kommentare / Antworten hier besagen, dass benutzerdefinierte CRC-Unterstützung über OpenFileGDB implementiert ist - es funktioniert nicht auf meinen Systemen (gdal-filegdb: OGR FileGDB Driver 1.11.2-1)

Wenn die Datei GDB Tabellen enthält, werden nur diese Tabellen in der Liste "Wählen Sie die hinzuzufügenden Vektorebenen aus" angezeigt, und es werden benutzerdefinierte CRC- und nicht benutzerdefinierte Daten mit dem folgenden Aussehen gemischt

arccatalog:

filegdb content arccatalog

qgis 2.10:

filegdb content qgis (FileGDB-Treiber und OpenFileGDB-Treiber)

Mein persönliches Fazit: Verwenden Sie immer Standard-CRCs! ! !

robert tuw
quelle
1

Es ist schön, im Jahr 2019 müssen Sie nicht oben tun, es wird bereits in QGIS 3.6 unterstützt.

Einfach und leicht in 3 Schritten:

Schritt 1: Klicken Sie auf die Schaltfläche "Vektor hinzufügen" (roter Kreis).

Bildbeschreibung hier eingeben


Schritt 2: Verzeichnis, openFileGDB und Dateipfad auswählen (roter Pfeil)

Bildbeschreibung hier eingeben


Schritt 3: Alle Ebenen auswählen (roter Kreis) Bildbeschreibung hier eingeben


Getan!!!!! Sie fügen einfach alle Ebenen zu qgis hinzu

hoogw
quelle