Pr_Alexey
Подобную строку я использовал раньше - вместо русских букв знаки вопроса.
Это 2 разные проблемы.
1 - соединение не устанавливается
2 - неверное преобразование текста
Настройки, о которых я писал и по ссылкам написано, дают возможность проверить соединение и текущие настройки, например, в нужной ли кодировке сервер возвращает данные.
1. В соединении вы указываете либо имя сервера (включая имя инстанса), либо DSN.
Одно из двух.
В любом случае вам нужно указать логин и пароль:
http://freetds.schemamania.org/userguide/odbcconnattr.htmПосле того как соедилинились, идем дальше.
2. Возможно, не хватает
ClientCharset в настройках DSN или
строке соединения.
Тоже см. ссылку выше.
У вас, вроде, в настройках есть указание
ODBC_BOTH_DSN - это настройка конфигурации DSN, обозначающая, что конфигурация может быть как системная, так и пользовательская.
Конфигурация может быть сохранена как системная, пользовательская - разные файлы.
Содержимое файлов, указанных в SYSTEM DATA SOURCES и USER DATA SOURCES одинаково?
Если да и все равно ошибка, давайте вернемся к способу указания всех параметров соединения, включая кодировку, в pyodbc.connect.
Потом, когда заработает простой способ, разберетесь с настройками и сделаете все красиво - через файлы.