QGIS 2.4アクセス.mdb追加エラー


9

だから私はここの指示に従いました:QGISはODBC接続を読むことができますか?QGISに.mdbを追加するための。道のりの3分の1についてのすばらしい指示があります。しかし、私はまだそれを開くことができません。Windows 7でQGIS 2.4を使用していますが、QGISとコンピューターを再起動しました。それでもエラーが発生します:「無効なデータソース:ODBC:co2014ProdSumm(これは.mdbです)は有効または認識されたデータソースではありません。」

これらはベクターレイヤーではなく、ESRIパーソナルジオデータベースでもありません。これは、2つのテーブルが必要なAccessデータベースです。

Qgis(Windows 7)で.mdbファイル(Microsoft Access)にアクセスする方法は 他にもいくつ かありますか?mdbファイルからプロジェクトに情報をインポートする方法

そして、これが答えかもしれませんが、それが何について話しているのかわかりません: Microsoft Access mdbは、QGISで「有効または認識されたデータソースではありません」

QGISに.mdbを追加する方法はありますか?また、自分のコンピューターにAccessがありません。

編集1:これが私の問題を明確にすることを願っています。無効なデータソースを取得するたび:C:... Co 2014 Annual Production Summary-xp.mdbは、有効または認識されたデータソースではありません。ここにアクセス接続を追加しました

ここにアクセス接続を追加しました

ベクターファイルとして追加しようとしています ベクターファイルとして追加

データベースを追加しようとして、local:host 3000も試しました。ソース、名前などに関係なく、写真のエラーは同じです...すべてのフィールドを変更してみました。 ここに画像の説明を入力してください


「QGISはODBC接続を読み取ることができますか」という質問にある「承認された回答」(ここに私の回答へのリンク)の指示に従いましたか?
RyanKDalton 2014

はい、それらは私が言及している指示です。QGISにアクセスして.mdbファイルに追加すると失敗します。
TJ

各手順の概要を更新しました。また、私はx64の指示に従いました。事前に確認しました。
TJ

すべての手順に従い、mdbファイルにODBC接続を作成できましたが、ESRIパーソナルジオデータベースオプションを使用すると、エラーメッセージが表示されます。theファイルに問題はありませんか?theファイルがジオデータベースファイルではない可能性はありますか?ありがとう

回答:


12

これを行うには2つの方法があることに注意してください。あなたがそれを行う方法は長い道のりですが、それが私がここでそれを行う方法を示すつもりです。もう1つの方法は、[ベクターレイヤーの追加]に移動してファイルを選択し、.mdbファイルの場所を参照して.mdbファイルを開く方法です。

まず、QGIS 32ビットバージョンが使用されていることを確認する必要があります。QGIS for Windows 32ビットをダウンロードしてインストールします。MicrosoftはAccess(.mdb)用の64ビットドライバーを作成していないため、32ビットバージョンのQGISが必要です。Esri ArcMapも32ビットなので、.mdbファイルを操作できます。

次に、DSN(データソース名)を作成する必要があります。DSNを作成するには、スタートボタンに移動してクリックします。

スタートボタン

次に、検索ボックスに「%windir%\ SysWoW64 \ odbcad32.exe」と入力し、odbcad32.exeプログラムをクリックします。

ODBCデータソースウィンドウ

[システムDSN]タブをクリックします

ここに画像の説明を入力してください

追加ボタンをクリックしてdsnを追加し、ODBCおよびEsri Personal Database.mdbにアクセスできるようにします。[追加]ボタンをクリックすると、新しいダイアログが表示されます。このダイアログで、[Microsoft Access Driver(*。mdb)]を選択し、[完了]をクリックします。

アクセスドライバを追加

完了をクリックすると、別のダイアログが表示されます。このダイアログで、データソース名にQGISを入力します。

データソース名

次に、[データベース]の下の[選択]ボタンをクリックします。このボタンを選択すると、別のダイアログが表示されます。これは、データベースの選択ダイアログです。

ここに画像の説明を入力してください

このダイアログで、.mdbファイルに移動する必要があります。フォルダに入ると、左のボックスに.mdbファイルが表示されます。.mdbファイルを選択して[OK]をクリックします

最終選択

これで、ODBC Microsoft Accessセットアップダイアログが表示されます。ダイアログには、以下のダイアログボックスのように.mdbファイルが表示されます。

ここに画像の説明を入力してください

ダイアログボックスで[OK]をクリックします。また、データソース名はQGISです。ODBC .mdb / Esri Personal GeoDatabase.mdbを設定するときに、この名前を使用します。[OK]をクリックすると、次のようなダイアログボックスが表示され、作成したDSNが示されます。このダイアログボックスで[OK]をクリックして閉じます。

ここに画像の説明を入力してください

QGIS 2.4を開いて、[ベクターレイヤーの追加]に移動します ここに画像の説明を入力してください

次に、データベースを選択し、必要なエンコーディングを選択して、[データベースの種類]で[Esri Personal GeoDatabase]を選択します。

ここに画像の説明を入力してください

今、同じダイアログで、新しいボタンをクリックします

ここに画像の説明を入力してください

新しいダイアログボックスが表示されます。このダイアログボックスで、[タイプ]、[名前]、および[データベース]フィールドに入力します。[タイプ]フィールドで、[Esri Personal GeoDatabase]を選択します。[名前]には、好きなものを入力します。[データベース]フィールドに「QGIS」と入力します。QGISは、前に作成したDSNと同じ名前であることに注意してください。

ここに画像の説明を入力してください

次に、テストボタンをクリックします。

ここに画像の説明を入力してください

すべてが正しく設定されている場合は、テストボタンをクリックした後にこれが表示されます。

ここに画像の説明を入力してください

次に[OK]をクリックしてテストを終了し、[OK]をクリックしてデータベース接続を終了します。

ここに画像の説明を入力してください

これで、接続に付けた名前が表示されます。入力したら、[開く]ボタンをクリックします。開くをクリックすると、パスワードの入力を求められます。データベースにパスワードがない限り、[OK]をクリックするだけです。

ここに画像の説明を入力してください

パスワードダイアログボックスで[OK]をクリックすると、次のようなダイアログが表示されます。

ここに画像の説明を入力してください

レイヤーを選択し、[OK]をクリックします。目的のレイヤーを選択して[OK]をクリックすると、別のダイアログボックスが表示されます。このダイアログボックスは、座標参照を設定するためのものです。

ここに画像の説明を入力してください

これで完了です。これは、通常の.mdbまたはEsri Personal GeoDatabaseで実行できます。このようにするには、DSNを作成してから接続を設定する必要があります。より簡単な方法があります。これは、ベクターを追加し、[ファイル]が選択されていることを確認して、.mdbを参照するだけです。.mdbデータベースを使用するには、QGIS 32ビットが必要です。

ここに画像の説明を入力してください


助けてくれてありがとう、それはテーブルをロードしません。エラーと表示されていますが、次のエラーメッセージは空白です。だから今、私は何をすべきかわかりません。Qgis 32ビットをダウンロードして、最初からやり直しました。追加してクリックしてドラッグすると、テーブルが表示されますが、すべて空白です。また、64ビットコンピューターでQgis 32ビットを実行しようとすると、かなり遅く、エラーをスローします。したがって、32ビットと64ビットの併用はお勧めしません。
TJ

@GisDoodler、素晴らしい投稿!
RyanKDalton 2014

圧倒的に美しい!上記の説明は完全に機能しました!あなたの貢献と時間をありがとうございました!

@GisDoodler:ありがとうございます!32ビットQGISに移行すると、長い方法も短い方法もうまくいきました。ただし、注意すべき点が1つあります。長い名前の.mdbファイル内にテーブルがある場合、それらは正しくリンクしません。名前が8文字以下(スペースなし、特殊文字なし)のテーブルのみが適切にリンクしているようです。
Sharad、2016年

0

GisDoodlerからのODBCポストに追加すると、仮想ファイルを使用してAccessデータベースのテーブルに接続し、Geometry列を手動で定義できます。仮想ファイルは次のようになります。

<OGRVRTDataSource>

<OGRVRTLayer name="worms">
    <SrcDataSource>ODBC:DISEASE,worms</SrcDataSource>
<SrcLayer>worms</SrcLayer>
<GeometryType>wkbPoint</GeometryType>
    <LayerSRS>WGS84</LayerSRS>
<GeometryField encoding="PointFromColumns" x="x" y="y"/>
</OGRVRTLayer>

</OGRVRTDataSource>

あなたはまだODBC-DSNのことをしなければならず、そして32ビットバージョンのQGISが必要です。データベース接続を開く代わりに、コンテンツテーブルにvrtファイルを追加します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.