Форум сайта python.su
Поставил pyODBC, PostgreSQL 8.4.1, MySQL(для тестов)
ODBC драйвера для MySQL и PostgreSQL - первый работает, второй нет
как заставить работать python через pyODBC с PostgreSQL?
выдаёт такую ошибку,
pyodbc.Error: ('IM002', ' \xc8\xf1\xf2\xee\xf7\xed\xe8\xea \xe4\xe0\xed\xed\xfb\xf5 \xed\xe5 \xed\xe0\xe9\xe4\xe5\xed \xe8 \xed\xe5 \xf3\xea\xe0\xe7\xe0\xed \xe4\xf0\xe0\xe9\xe2\xe5\xf0, \xe8\xf1\xef\xee\xeb\xfc\xe7\xf3\xe5\xec\xfb\xe9 \xef\xee \xf3\xec\xee\xeb\xf7\xe0\xed\xe8\xfe (0) (SQLDriverConnectW)')
Как именно называется ODBC драйвер для PostgreSQL? Не нашол нигде. Перебрав всю папку(dll файлы в ней) с установленным psqlODBC - пришол к выводу, что должен называться “PostgreSQL ODBC Driver (English)” - по аналогии с “MySQL ODBC 5.1 Driver”.
Офлайн
Оказывается имя драйвера не соответствует описанию в используемой библиотеке
Для того чтобы узнать установленные драйверы в системе можно использовать ODBC Administrator tool
* The 32-bit version of the Odbcad32.exe file is located in the %systemdrive%\Windows\SysWoW64 folder.
* The 64-bit version of the Odbcad32.exe file is located in the %systemdrive%\Windows\System32 folder.
В частности для PostgreSQL оффициальные драйверы называются:
PostgreSQL UNICODE
PostgreSQL ANSI
Офлайн
У меня была похожая проблема, которая решилась созданием DSN'a в системе (причем через системный/пользовательский DSN созданный на разных системах):
http://python.su/forum/viewtopic.php?id=5196
Офлайн