Я использовал pymssql-1.0.2 и freetds-0.82.7 на ubuntu-10.10.
Кроме того, у меня есть сервер mssql2008 на Windows-7.
Я могу соединиться с mssql из Ubuntu, используя pymssql и freetds.
Но я не могу получить данные Unicode из базы данных mssql. Сортировка базы данных - Cyrillic_General_CI_AS.
Мой файл freetds.conf выглядит так:
[mssql2008]
host=10.0.0.34
port=1433
tds version=7.0
Мой код выглядит так:
conn = pymssql.connect(host=10.0.0.34\mssql2008, user=***, password=***, database=eoffice, as_dict=true, charset='iso-8859-1')
crms = conn.cursor()
crms.execute('SELECT cc_Name FROM tblHR_CodeClass')
for row in crms.fetchall():
raise u"Succeeded! Test data: " + row['cc_Name']
break
Ожидаемый результат: "Өмнөговь аймаг"
Фактический результат: "ªìíºãîâü àéìàã"
Когда я использую кодировку 'UTF-8', вызов fetchall () выдает ошибку, означающую, что utf8 не может прочитать данные, которые находятся вне диапазона кодовой страницы.
Как получить данные Unicode, хранящиеся в базе данных mssql?
Пожалуйста, дайте руку!
С уважением,
Orgil