Làm cách nào để sửa lỗi Không thể khởi tạo kết nối ODBC thành DSN cho ALC_AV_CO.


9

Vì vậy, tôi là người mới trong cộng đồng QGIS và tôi đã cố gắng đưa vào một số cơ sở dữ liệu truy cập khá lớn mà không có nhiều thành công. Tôi có windows 7, vì vậy tôi đã tìm hiểu các công cụ quản trị / Nguồn dữ liệu (ODBC) để tạo DSN người dùng mới. Tôi đã đặt nó làm Trình điều khiển truy cập Microsoft ( .mdb, .accdb) và liên kết nó với cơ sở dữ liệu tôi muốn sử dụng.

Sau đó, trong QGIS, tôi đã sử dụng thêm lớp vectơ, chọn Cơ sở dữ liệu, loại ODBC bên trái, đặt tên, localhost được chỉ định và cho Cơ sở dữ liệu, được viết bằng một tên giống hệt với Người dùng DSN mà tôi đã tạo ... NHƯNG ... mỗi khi tôi Hãy thử kiểm tra nó, nó đưa ra lỗi sau:

Connection failed - Check settings and try again.

Extended error information:
Unable to initialize ODBC connection to DSN for ALC_AV_CO,
[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

Tại sao nó làm điều này?

Thật thú vị khi lần duy nhất tôi thành công, tôi đã xoay sở để tạo một DSN người dùng bằng Microsoft Access Driver (* .mdb) bằng cách nào đó mà không có .accdb (Tôi đã lưu phiên bản DB của mình trong .mdb để làm việc này). Tuy nhiên, vì những lý do mà tôi không biết, tùy chọn này không còn có sẵn cho tôi trong menu tạo nguồn dữ liệu mới, vì vậy tôi không thể sử dụng lại!

Tôi thực sự sẽ đánh giá cao nếu ai đó có thể cho tôi lời khuyên về những gì tôi đang làm sai!


+1 - Tôi đã thử quy trình tương tự bạn đã làm, với kết quả tương tự. Ngẫu nhiên, đây là quá trình tương tự được đưa ra bởi một người bình luận trên blog của @ underdark, vì vậy bạn sẽ nghĩ rằng nó sẽ hoạt động. Nó có thể là một cái gì đó đã thay đổi trong trình điều khiển ODBC. Đây là một liên kết đến chủ đề đó: Tham gia bảng - Một tính năng mới trong QGIS
Nhận không gian

Ya, tôi tìm thấy hướng dẫn tương tự trong khi lướt các interwebs. Cho đến nay, giải pháp hoạt động tốt nhất mà tôi đã đưa ra là chỉ cần tạo mọi thứ trong cơ sở dữ liệu Access mà tôi phải kết nối bằng cách nào đó (khi tôi cố mở nó trong Người dùng DSN, nó tuyên bố nó không thể tìm thấy tệp ... nhưng nó vẫn hoạt động trong QGIS). Tôi chỉ tò mò nếu tôi đang thực hiện một quy trình không chính xác, hoặc nếu có một lỗi.
dùng12104

Bạn thực sự có thể xem xét việc nộp báo cáo lỗi tại trang web [QGIS] (www.qgis.org). Đây là loại điều cần được xem xét kỹ hơn.
Nhận không gian

Câu trả lời:


2

nếu bạn sử dụng win7 64 bit:

Có lẽ, bạn cấu hình cơ sở dữ liệu sai.

Sử dụng tệp này:% systemdrive% \ Windows \ SysWoW64 \ Odbcad32.exe để định cấu hình tệp.

không giống như bạn đạt được bằng mouseklicks.

nếu bạn sử dụng mysql-db với odbc: bạn phải cài đặt đúng trình điều khiển

Có lẽ nó giúp đọc / gtranslate trang web này

chào

kreike


1

trong quá khứ đã xảy ra lỗi xuất phát từ trình điều khiển ODBC 64 bit / 32 bit (như được giải thích trong câu trả lời ở trên), giữa postgis / access / qgis. Tôi đã quyết định hạ cấp tất cả 3 xuống 32 bit và bây giờ có thể kết nối với cả .mdb và .accdb thông qua ODBC mà không gặp vấn đề gì (tốt, phải mất một lúc) và sau đó tham gia các bảng này thành các lớp (shp và postgis).

Và tôi thích cách kết nối qgis 2.0 để truy cập và postgis, đó là một công cụ tuyệt vời đối với tôi.


1

Tôi đã thấy rằng ngoài câu trả lời của kreike về việc cài đặt trình điều khiển 32 bit ở vị trí thích hợp, tôi cũng cần phải sử dụng phiên bản 32 bit của QGIS. QGIS 64 bit dường như không 'nói chuyện' với trình điều khiển 32 bit một cách chính xác (hoặc có thể không nhận ra rằng nó đã được đặt trong SysWoWfolder).

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.