QGISを使用してEsri Personal Geodatabase(* .mdb)を開きますか?


11

QGIS 2.6でEsri Personal Geodatabase(* .mdb; ArcGIS 10.2)を開くことはできますか?以前のバージョンは正しかった。


3
これを試してエラーを受け取ったか、またはQGIS 2.6でESRI PGDBを開くためのオプションがあるかどうかを尋ねていますか?オプションが利用可能であるレイヤー > レイヤーを追加 > ベクタレイヤーの追加 ]> [ データベース ]> [選択ESRIパーソナルジオデータベースをタイプとして
ジョセフ・

Windowsで64ビットバージョンのQGISを使用していますか?
nmtoken

これを実行しようとしましたが、変更を加えたqgis.batファイルを保存できません。何か案が?ありがとう
-NandoSC

回答:


21

64ビットバージョンのQGISをWindowsにインストールし、Personal GeoDatabases(* .mdb)が機能しなくなった場合、このソリューションが適用される可能性があります。私は2.6ではなくQGIS 2.8.1を使用していますが、問題とソリューションは同じであると想定しています。

根本的な問題は、このGDALバグに関連していますMDB(64ビット)の読み取りの問題

ステップ1

64ビットバージョンのODBCドライバーをダウンロードします:Microsoft Access Database Engine 2010 Redistributable

32ビットバージョンのOfficeがインストールされていない場合は、実行可能ファイルを実行するだけです。ただし、32ビットのOfficeインストールがある場合は、/passiveオプションを使用してコマンドプロンプトから実行可能ファイルを実行する必要があります。

パッシブモードでの64ビットAccess Database Engine 2010再頒布可能パッケージのインストール

ステップ2

qgis.batファイルを見つけます(C:\OSGeo4W64\bin\qgis.batたとえば、私の中にあります)。

次の2行を追加します。

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

ステップ3

QGISを開き、mdbファイルをワークスペースにドラッグします

出来上がり!


これは、Windows 8.1上の64ビットQGIS 3.0.0でうまく機能しました。
ブライアンフィッシャー

7

Microsoft Access Database Engine 64ビットが正常にインストールされていれば、次のことができます。

方法1(QGIS 2で動作)

次の2行を追加します。

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

最後の行の前のqgis​​.bat / qgis-grass7.bat / qgis-ltr.bat / qgis-ltr-grass7.batで、通常は次のようなものです

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

[PGEO_DRIVER_TEMPLATE変数の値には2つのパーセント記号があることに注意してください]

方法2(QGIS 3で動作)

QGIS設定パネル->オプション| システム| 環境は、次の2つの変数を追加します。

variable name: OGR_SKIP 
value: ODBC

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

[カスタム変数を使用する]チェックボックスをオンにします

[この場合、PGEO_DRIVER_TEMPLATE変数の値には1つのパーセント記号しかありません]

方法3(QGIS 2とQGIS 3の両方で動作します)

Windows拡張システム設定の「環境変数」パネルで、次の2つの新しい変数をユーザー変数またはシステム変数として設定します。

variable name: OGR_SKIP 
value: ODBC

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

[この場合も、PGEO_DRIVER_TEMPLATE変数の値には1つのパーセント記号しかありません]


私にとっては、ESRI .mdbで動作しますが、geomedia mdbでもわかりませんか?誰でもこの種類のファイルについての経験があります
ロベルトマルゾッキ

1

提案されたソリューションは、ウィンドウ10でも正常に機能します。qgis.batファイルに2行を追加するためのさらなる提案のみです。

2行が設定されています。そのため、コマンドの開始前に行を追加することが重要です。

たぶんそれは落ち着きがありませんが、注意を怠ると、誤解される危険があります。


これは最新の回答なので、機能することをコメントしたいのですが、フィーチャクラス(ベクターレイヤー)のみをロードできますが、mdb内に含まれるテーブルとリレーションシップをロードする方法はわかりません。フィーチャデータセットも無視されます。
nanunga
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.