Truy cập QGIS 2.4 .mdb thêm lỗi


9

Vì vậy, tôi đã làm theo hướng dẫn ở đây: QGIS có thể đọc kết nối ODBC không? để thêm .mdb vào QGIS. Có những hướng dẫn tuyệt vời khoảng 1/3 đường xuống. Nhưng tôi vẫn không thể mở được. Tôi trên Windows 7 với QGIS 2.4 Tôi đã khởi động lại QGIS và máy tính của mình. Tôi vẫn nhận được lỗi: "Nguồn dữ liệu không hợp lệ: ODBC: co2014ProdSumm (btw đây là .mdb) không phải là nguồn dữ liệu hợp lệ hoặc được công nhận."

Đây không phải là các lớp vectơ cũng không phải là cơ sở dữ liệu địa lý cá nhân ESRI. Đây là một cơ sở dữ liệu Access với 2 bảng tôi cần.

Tôi cũng tìm thấy một vài bài viết khác Làm thế nào để truy cập tệp .mdb (Microsoft Access) trong Qgis (với windows 7)? Làm cách nào để nhập thông tin từ tệp mdb vào dự án?

và đây có thể là câu trả lời nhưng tôi không biết nó đang nói về điều gì: Microsoft Access mdb "không phải là nguồn dữ liệu hợp lệ hoặc được công nhận" trong QGIS

Có cách nào để thêm .mdb vào QGIS không? Ngoài ra tôi không có quyền truy cập trên máy tính của tôi.

Chỉnh sửa 1: Tôi hy vọng điều này làm rõ vấn đề của tôi. Mỗi lần tôi nhận được Nguồn dữ liệu không hợp lệ: C: ... Tóm tắt sản xuất hàng năm 2014-xp.mdb không phải là nguồn dữ liệu hợp lệ hoặc được công nhận. Đây là nơi tôi đã thêm kết nối truy cập

Đây là nơi tôi đã thêm kết nối truy cập

Đang cố gắng thêm dưới dạng tệp vectơ thêm dưới dạng tệp vectơ

Cố gắng thêm cơ sở dữ liệu, tôi cũng đã thử local: host 3000 Lỗi trong pic là như nhau bất kể nguồn, tên, v.v ... Tôi đã thử thay đổi tất cả các trường xung quanh. nhập mô tả hình ảnh ở đây


Bạn đã làm theo hướng dẫn "câu trả lời được chấp nhận" của tôi (liên kết đến câu trả lời của tôi ở đây) trong câu hỏi "QGIS có thể đọc kết nối ODBC" không?
RyanKDalton

Vâng, đó là những hướng dẫn tôi đang đề cập đến. Không thành công khi tôi truy cập vào QGIS để thêm vào tệp .mdb.
TJ

Tôi đã thực hiện một bản cập nhật để phác thảo từng bước. Ngoài ra tôi làm theo hướng dẫn x64. Tôi đã kiểm tra trước khi ra tay.
TJ

Tôi đã thực hiện tất cả các bước và tôi có thể tạo một sự hoàn hảo ODBC cho tệp mdb, nhưng khi tôi sử dụng tùy chọn Cơ sở dữ liệu địa lý cá nhân ESRI, nó nhận được thông báo lỗi. Có vấn đề với tập tin không? Có thể tệp không phải là tệp cơ sở dữ liệu địa lý? Cảm ơn

Câu trả lời:


12

Lưu ý có hai cách để làm điều này. Cách bạn đang làm là một chặng đường dài nhưng đó là cách tôi sẽ chỉ cho bạn cách làm ở đây. Một cách khác là chỉ cần vào Add Vector Layer và sau đó chọn tệp rồi duyệt đến vị trí tệp .mdb của bạn và mở tệp .mdb.

Trước tiên, bạn cần đảm bảo phiên bản QGIS 32 bit đang được sử dụng. Tải xuống và cài đặt QGIS cho Windows 32 bit. Bạn cần một phiên bản QGIS 32 bit vì Microsoft không tạo trình điều khiển 64 bit cho Access (.mdb). Esri ArcMap cũng 32 bit để nó có thể hoạt động với các tệp .mdb.

Thứ hai, bạn cần tạo DSN (Tên nguồn dữ liệu). Để tạo DSN, Chuyển đến nút bắt đầu của bạn và nhấp vào nó.

Nút bắt đầu

Tiếp theo trong hộp tìm kiếm, nhập% Windir% \ SysWoW64 \ odbcad32.exe và nhấp vào chương trình odbcad32.exe.

Cửa sổ nguồn dữ liệu ODBC

Nhấp vào tab Hệ thống DSN

nhập mô tả hình ảnh ở đây

Nhấp vào nút thêm để thêm một DSN để ODBC và Esri Personal Database.mdb có thể được truy cập. Khi bạn nhấp vào nút Thêm, một hộp thoại mới sẽ xuất hiện. Trên hộp thoại này, chọn Microsoft Access Driver (*. Mdb) và nhấp vào kết thúc.

Thêm trình điều khiển truy cập

Sau khi nhấp vào kết thúc, một hộp thoại khác sẽ xuất hiện. Trong hộp thoại này, đặt QGIS cho Tên nguồn dữ liệu.

Tên nguồn dữ liệu

Tiếp theo bấm vào nút Chọn trong Cơ sở dữ liệu. Khi bạn chọn nút này, một hộp thoại khác sẽ xuất hiện. Đây là hộp thoại chọn cơ sở dữ liệu.

nhập mô tả hình ảnh ở đây

Trên hộp thoại này, bạn cần điều hướng đến tệp .mdb của mình. Khi bạn ở trong thư mục, tệp .mdb sẽ xuất hiện ở hộp bên trái. Chọn tệp .mdb của bạn và nhấp vào OK

Chọn cuối cùng

Bây giờ bạn sẽ thấy Hộp thoại Thiết lập Microsoft Access của ODBC. Hộp thoại sẽ hiển thị cho bạn tệp .mdb của bạn giống như hộp thoại bên dưới.

nhập mô tả hình ảnh ở đây

Bây giờ bấm vào OK trên hộp thoại. Cũng lưu ý, Tên nguồn DATA là QGIS. Chúng tôi sẽ sử dụng tên này khi thiết lập ODBC .mdb / Esri Personal GeoDatabase.mdb. Khi bạn nhấp vào ok, bạn sẽ thấy một hộp thoại như sau, hiển thị DSN bạn vừa tạo. Nhấn ok vào hộp thoại này để đóng nó.

nhập mô tả hình ảnh ở đây

Bây giờ hãy mở QGIS 2.4 và đi đến Thêm lớp Vector nhập mô tả hình ảnh ở đây

Bây giờ, Chọn cơ sở dữ liệu và sau đó chọn Mã hóa bạn muốn và sau đó trong Loại cơ sở dữ liệu, chọn Esri Personal GeoDatabase

nhập mô tả hình ảnh ở đây

Bây giờ, trên cùng một hộp thoại, bấm vào nút mới

nhập mô tả hình ảnh ở đây

Một hộp thoại mới sẽ xuất hiện. Trên hộp thoại này, điền vào các trường Loại, Tên và Cơ sở dữ liệu. Đối với trường Loại, chọn Cơ sở dữ liệu địa lý cá nhân Esri. Đối với Tên, nhập bất cứ điều gì bạn muốn. Đối với trường Cơ sở dữ liệu, nhập QGIS. Lưu ý rằng QGIS là cùng tên với DSN mà chúng tôi đã tạo trước đó.

nhập mô tả hình ảnh ở đây

Bây giờ bấm vào nút kiểm tra.

nhập mô tả hình ảnh ở đây

Nếu mọi thứ được thiết lập chính xác, bạn sẽ thấy điều này sau khi nhấp vào nút kiểm tra.

nhập mô tả hình ảnh ở đây

Tiếp theo bấm ok để đóng kiểm tra và sau đó bấm Ok để kết thúc cơ sở dữ liệu.

nhập mô tả hình ảnh ở đây

Bây giờ bạn sẽ thấy tên bạn đã cho kết nối và sau khi bạn thực hiện, hãy nhấp vào nút Mở. Khi bạn nhấp vào mở, nó sẽ yêu cầu mật khẩu. Chỉ cần nhấp vào ok, trừ khi cơ sở dữ liệu có mật khẩu.

nhập mô tả hình ảnh ở đây

Sau khi nhấp vào hộp thoại mật khẩu, bạn sẽ thấy một hộp thoại như bên dưới:

nhập mô tả hình ảnh ở đây

Chọn lớp của bạn và nhấp vào ok. Sau khi chọn lớp bạn muốn và nhấp vào ok, bạn sẽ thấy một hộp thoại khác. Hộp thoại này là để thiết lập tham chiếu tọa độ.

nhập mô tả hình ảnh ở đây

Và chúng ta đã hoàn thành! Bạn có thể làm điều này với .mdb hoặc Esri Personal GeoDatabase thông thường. Để thực hiện theo cách này, bạn cần tạo DSN và sau đó thiết lập kết nối. Có một cách đơn giản hơn và đó chỉ là bằng cách thêm vectơ và đảm bảo Tệp được chọn và sau đó chỉ duyệt đến .mdb của bạn. Lưu ý, bạn cần có QGIS 32 bit để làm việc với cơ sở dữ liệu .mdb.

nhập mô tả hình ảnh ở đây


Cảm ơn sự giúp đỡ, nhưng nó sẽ không tải các bảng. Nó báo lỗi nhưng nó trống thông báo lỗi tiếp theo. Vì vậy, bây giờ tôi không biết phải làm gì. Tôi đã tải xuống Qgis 32bit và bắt đầu lại. Tôi thậm chí đã cố gắng chỉ thêm và sau đó nhấp và kéo và nó kéo trong các bảng nhưng tất cả đều trống. Ngoài ra Qgis 32bit trên máy tính 64 bit đang chạy khá chậm và gặp lỗi khi bạn cố mở nó. Vì vậy, tôi không khuyên bạn nên sử dụng 32 bit với 64 bit.
TJ

@GisDoodler, bài tuyệt vời!
RyanKDalton

Tuyệt đẹp! Các hướng dẫn như được cung cấp ở trên làm việc hoàn hảo! Cảm ơn bạn rất nhiều vì sự đóng góp và thời gian của bạn!

@GisDoodler: Cảm ơn rất nhiều! cả phương pháp dài hơn và ngắn hơn đều có hiệu quả đối với tôi, khi tôi chuyển sang QGIS 32 bit. Tuy nhiên, một điểm cần lưu ý: nếu ai đó có các bảng bên trong tệp .mdb có tên dài thì chúng không liên kết chính xác. Chỉ các bảng có tên 8 ký tự trở xuống (và không có khoảng trắng, không có ký tự đặc biệt) dường như liên kết chính xác.
Sharad

0

Thêm vào bài viết ODBC từ GisDoodler, bạn có thể sử dụng Tệp ảo để kết nối với bảng của cơ sở dữ liệu Access và xác định các cột Hình học theo cách thủ công. Tệp ảo có thể trông như thế này:

<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>

Bạn vẫn phải thực hiện công cụ ODBC-DSN và cần một phiên bản QGIS 32 bit. Thay vì mở kết nối cơ sở dữ liệu, bạn thêm tệp vrt vào bảng nội dung.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.