Диспетчер драйверов odbc драйвер не поддерживает данную функцию

Обновлено: 05.07.2024

Но есть удаленная MySQL. Решил пробовать через ODBC, что бы подключаться к обеим базам, меняя только строку подключения.
Во время MyConnection.Open(); эта ошибка и вылезает.

В источниках данных создал некий источник с именем Name, вбил все данные для удаленного MySQL и нажав на кнопочку Test получил уведомление, что соединение успешно (да и базы данных из раскрывающегося меню подтягиваются сами).

При этом, такой код вполне работает:

Тут я подключаюсь к своей MSSQL базе. Правда почему-то ругается на пару логин/пароль (не знаю почему, пока ищу ответ), но по крайней мере он видит базу данных.

Добавлено через 38 минут
Небольшая наводка из наблюдений и догадок.
У меня есть сторонняя программа, которая так же использует ODBC соединение. При вводе данных сервера она выдает туже ошибку, что у меня. Но у нее имеется возможность коннектиться через DSN. И вот если я пропишу упомянутый выше источник данных "Name" с теми же самыми данными сервера (а как я писал, кнопка Test - выдает Successfus), то эта программа нормально соединяет.

Добавлено через 3 часа 35 минут

Разобрался. Для таких же как я еще раз по полочкам:


Хотим создать подключение к MSSQL и MySQL через ODBC.
//MSSQL

string MyConString - строка подключения
DRIVER - название используемого драйвера для общения с MSSQL/MySQL (ниже подробнее)
SERVER - имя сервера MSSQL/MySQL или его IP-адрес (242.54.12.52).
DATABASE - имя базы данных
UID - имя пользователя для входа на сервер MSSQL/MySQL
PASSWORD - пароль для входа на сервер MSSQL/MySQL
OPTION - без понятия. Вроде и без нее работает.

Если строчка MyConnection.Open(); не выдала ошибку, то все в порядке, мы имеем доступ к базе данных.

После установки приведенный выше код уже должен работать.
Проверить драйвера на Windows 7, можно запустив
c:\Windows\System32\odbcad32.exe - для 32-битных систем
c:\Windows\SysWOW64\odbcad32.exe - для 64-битных систем
и открыв вкладку "Драйвера".

У меня например была ошибка IM0002 (источник Данных не найден и не указан драйвер по умолчанию).
По странной причине драйвера у меня слетели, но отображались созданные по ним "Пользовательские DSN" (все там же в odbcad32.exe).
Попытки "Настроить" или "Удалить" эти DSN система блокировала ссылаясь на то, что "такой драйвер не доступен". Решил это тем, что поставил поверх старых, новые драйвера и добавил "Пользовательские DSN" с тем же именем, заменив старые.

После этого появилась ошибка IM014 (В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу)
У меня стоит Wimdows 7 64-bit. Запустив c:\Windows\SysWOW64\odbcad32.exe, я разумеется нашел там установленные новенькие драйвера для 64-битной системы. Ошибка же появлялась из-за того, что сервер, к которому я обращался стоит на ОС 32-bit.
Соответственно тут:
c:\Windows\System32\odbcad32.exe
этих драйверов не было. Поставил для 32-bit - заработало.

Читайте также: