Показать сообщение отдельно
Старый 28.08.2014, 11:00   #11  
dax_ is offline
dax_
Участник
 
7 / 10 (1) +
Регистрация: 27.08.2014
Хотелось поблагодарить всех участников за высказанное мнение, но все таки, если принять за аксиому то, что нужен доступ к MySQL через ODBC - в чем причина отсутствия каких-либо данных в resultset?

Немного дополнительной информации:
Версия MySQL - 3.51. Версия 32-битного драйвера на клиенте - 3.51.06
Код выполняется из джоба на 32-битном клиенте. Коннект к БД точно есть, так как при наличии ошибок в запросе система реагирует соответствующими информационными сообщениями.

При попытке выполнить данный джоб на сервере АОС (64 битная архитектура) сначала ругалось на отсутствие драйвера MySQL ODBC на сервере.

Нашли 64-битный драйвер - версия 3.51.30. Установили сразу оба (32-битный и 64 битный), каждый в свою папку.

В результате при выполнении этого же джоба с 32-битного клиента непосредственно на сервере АОС (через драйвер версии 3.51.30) коннект к базе не происходит: [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
Очевидно он не воспринимает строку подключения, которая отлично работает на 32-битном драйвере версии 3.51.06.

При этом, если явно указать 32-битный DSN, какой-то коннект вроде происходит, но при передаче значений в resultset выдает следующее:
Описание ошибки SQL: [Microsoft Dynamics AX] Unable to retrieve message for retval -1, ODBC call reason code 100,
SQLSTATE = []
Error message []

На явные ошибки в тексте запроса (неверное имя поля, таблицы, команды) не реагирует.

Аналогичный эффект наблюдается при выполнении кода непосредственно на 64-битном сервере АОС через 64-битный драйвер.