PDO_ODBC: имя источника данных не найдено и указанный драйвер по умолчанию не указан

Я пытаюсь получить доступ к ODBC-соединению в PHP через PDO_ODBC. Это мой код:

$db = new PDO('odbc:MyDSN', '', '');

И я получаю эту ошибку:

SQLSTATE [IM002] SQLConnect: 0 [Microsoft] [диспетчер драйверов ODBC] Имя источника данных не найдено и указанный драйвер по умолчанию не указан

Я знаю, что DSN работает, потому что я могу использовать его в Python с pyodbc. Тип – User DSN – нужно ли быть системным DSN? Я не указываю драйвер, потому что понял, что ODBC отвлекает это, но, может быть, мне нужно? Базовая БД – это Oracle, если это помогает.

Спасибо!

На самом деле есть два отдельных приложения Microsoft ODBC Administrator, один для 32-разрядных и один для 64.

Как объясняет статья в KB:

32-разрядная версия файла Odbcad32.exe находится в папке% systemdrive% \ Windows \ SysWoW64.

64-разрядная версия файла Odbcad32.exe находится в папке% systemdrive% \ Windows \ System32.

Нет, не опечатка – 32-разрядная версия находится в папке SysWoW64 а 64-разрядная – в папке System32 . (Ий)

Я запускал 64-битный веб-сервер, который проверял 64-битную ODBC-библиотеку для DSN, тогда как у меня это было в 32-битном. Понижение сервера сделало трюк.