Уведомления

Группа в Telegram: @pythonsu

#1 Июль 22, 2009 10:20:59

zexar
От:
Зарегистрирован: 2009-07-22
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Ошибка кодировки в запросе к БД

Здравствуйте.
Пытаюсь выполнить простой запрос к базе данных и получаю следующую ошибку

Exception Type:  	InterfaceError
Exception Value: can't encode unicode SQL statement to WINDOWS-1251
на строке - cursor.execute( ‘SELECT login FROM “user”.user;’ ).

Причем эту ошибку выдает не постоянно, иногда ошибка такая
Exception Type:  	InterfaceError
Exception Value: can't decode into unicode string from WINDOWS-1251
но уже при получении результатов запроса - cursor.fetchall().
Исходный файл при этом не меняю, эти 2 ошибки появляются без всякой последовательности при новом запуске скрипта.
Почитал здесь про различные варианты решения проблемы с кодировками - не помогло. Пробовал перекодировать файл в utf-8/windows-1251, указывал в начале файла “# -*- coding: windows-1251 -*-”, задавал запрос в виде u'SELECT login FROM “user”.user;' после чего перекодировал как query.encode('windows-1251').
При чем здесь кодировка понять не могу, все символы латинские, включая результат.
База postgresql, подключаюсь через psycopg2, python 2.6 подключен через mod_python. Использую django, но он что-то вообще не подключается к базе хотя ошибку не выдает.
Спасибо.



Офлайн

#2 Июль 22, 2009 22:47:58

zexar
От:
Зарегистрирован: 2009-07-22
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Ошибка кодировки в запросе к БД

Отменяется. :)
Проблема оказалась в django. Причину правда, еще не выяснил, но буду разбираться, по крайней мере ясно, куда копать.



Офлайн

#3 Июль 23, 2009 12:29:24

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

Ошибка кодировки в запросе к БД

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version