2008-11-12 43 views
25

Trong khi kết nối net để Sybase máy chủ tôi đã thông báo lỗi này:ERROR: [Microsoft] [ODBC driver Manager] Dữ liệu tên nguồn không tìm thấy và không có tài xế mặc định

[Microsoft] [ODBC driver Manager] Không tìm thấy tên nguồn dữ liệu và không có trình điều khiển mặc định nào được chỉ định

Điều này đã hoạt động đúng cách trước đây. Hệ thống DSN với cùng công việc chi tiết và kết nối dữ liệu qua vs.net cũng hoạt động.

Tôi đang sử dụng vs.net 2005.

Mọi đề xuất?

+0

Tôi biết rằng câu hỏi này là cũ và cho vs.net 2005, nhưng tôi đang sử dụng Visual Studio 2015 Professional và tôi bắt đầu nhận được lỗi này trong giải pháp của mình. Đó là một chương trình win32 sử dụng một người dùng ODBC 32 bit-DSN. Vì không có trình điều khiển 64 bit avaialble cho cơ sở dữ liệu của tôi, tôi đã phải sử dụng 32-bit. Khi tôi xóa tập tin .sou của tôi (để sửa chữa một vấn đề IDE) Visual Studio đổi thiết lập xây dựng của tôi trở lại x64 (và gây ra lỗi này). Việc sửa chữa, trong trường hợp của tôi, là đủ đơn giản ... chỉ cần thiết lập lại cấu hình để win32. Trong IDE, nhấp chuột phải vào Solution Name-> change 'Platform' thành Win32). – david1024

Trả lời

-1

Thực hiện các bước sau:

  1. Khởi động Registry Editor bằng cách gõ regedit trong cửa sổ Run.
  2. Chọn khóa sau trong sổ đăng ký: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC.
  3. Trong menu Bảo mật, hãy nhấp vào Quyền.
  4. Cấp quyền đầy đủ cho tài khoản đang được sử dụng để tạo kết nối.
  5. Thoát khỏi Trình chỉnh sửa đăng ký.
26

Nếu bạn đang làm việc với máy chủ x64, hãy nhớ rằng có các cài đặt ODBC khác nhau cho các ứng dụng x86 và x64. Công cụ "Nguồn dữ liệu (ODBC)" trong danh sách Công cụ quản trị sẽ đưa bạn đến phiên bản x64. Để xem/chỉnh sửa cài đặt x86 ODBC, bạn sẽ cần phải chạy mà phiên bản của công cụ này bằng tay:

%windir%\SysWOW64\odbcad32.exe (%windir% is usually C:\Windows) 

Khi ứng dụng của bạn chạy như x64, nó sẽ sử dụng các nguồn dữ liệu x64, và khi nó chạy như x86 thay vào đó, nó sẽ sử dụng các nguồn dữ liệu đó.

+0

Tôi đã thử điều này ở đây, và nó liên tục bị treo Quản trị viên ODBC của tôi, bất kỳ ý tưởng nào? – Codejoy

+0

những gì tôi cần thay đổi trong cài đặt cho ứng dụng 32 bit? – Peru

+0

Hãy đánh dấu phần này là câu trả lời vì đó là giải pháp phù hợp cho câu hỏi được yêu cầu, –

3

tôi nhận được một lỗi tương tự, trong đó đã được giải quyết bằng cách cài đặt các trình điều khiển MySQL tương ứng từ:

http://www.connectionstrings.com/mysql-connector-odbc-5-2/info-and-download/

và bằng cách thực hiện các bước sau:

  1. Đến IIS và Application Pools trong menu bên trái.
  2. Chọn hồ bơi ứng dụng có liên quan được gán cho dự án.
  3. Nhấp vào Đặt giá trị mặc định của hồ bơi ứng dụng.
  4. Trong tab chung, đặt Bật 32 bit ứng dụng mục nhập vào "True".

tham khảo:

http://www.codeproject.com/Tips/305249/ERROR-IM-Microsoft-ODBC-Driver-Manager-Data-sou

+0

Cảm ơn Honk đã chỉnh sửa –

+0

Đã làm việc cho tôi, cảm ơn – Froggiz

0

Đối với bất cứ ai đến đây sau này, tôi đã có vấn đề này thông qua mạng Windows, và cung cấp một điều bổ sung cho kiểm tra:

Python script kết nối sẽ làm việc từ dòng lệnh trên máy (linux) của tôi, nhưng một số người dùng gặp sự cố khi kết nối - rằng nó hoạt động từ CLI đã đề xuất DSN và thông tin xác thực là đúng. Vấn đề đối với chúng tôi là chính sách bảo mật nhóm yêu cầu thông tin đăng nhập ODBC được đặt trên mọi máy. Một khi chúng tôi đã thêm rằng (vì một lý do nào đó, người dùng có ba trong bốn thông tin ODBC mà họ cần cho các hệ thống khác nhau của chúng tôi), họ có thể kết nối.

Bạn có thể dĩ nhiên làm điều đó ở cấp độ nhóm, nhưng vì nó là một thiếu sót đơn giản trên một phần của một máy, tôi đã làm điều đó trong Control Panel > ODBC Drivers > New

Các vấn đề liên quan