Уведомления

Группа в Telegram: @pythonsu

#1 Май 25, 2019 14:55:57

dima_ikar
Зарегистрирован: 2019-05-03
Сообщения: 28
Репутация: +  0  -
Профиль   Отправить e-mail  

python postgresql db - изменить кодировку

Добрый Всем! помогите правильно считать данные с таблицы
пример программы
import psycopg2
conn = psycopg2.connect(dbname=dbn, user=dbuser, password=dbpas, host=dbhost)
cursor = conn.cursor()
cursor.execute(“SELECT * FROM list_oid”)
row = cursor.fetchone()
for row in cursor:
print(row.decode('utf8'))
cursor.close()
conn.close()
———————-
стандартная программа для чтения таблиц
получаю ошибку
print(row.decode('utf8'))
AttributeError: ‘tuple’ object has no attribute ‘decode’
без декодера получаю = \xd0\x91\xd1\x80\xd1\x83\xd0\xb4\xd0\xbd\xd0\xb8\xd0\xb9 \xd1\
а должно быть нормальный рус текст
кодировка стоит по умолчания print conn.encoding = ‘utf8’
что я не так делаю

Офлайн

#2 Май 27, 2019 07:48:18

Rafik
Зарегистрирован: 2018-09-04
Сообщения: 231
Репутация: +  27  -
Профиль   Отправить e-mail  

python postgresql db - изменить кодировку

dima_ikar
AttributeError: ‘tuple’ object has no attribute ‘decode’
row = cursor.fetchone() здесь мы получаем кортеж, состоящий из элементов строки таблицы, где каждый элемент кортежа - это содержимое одного столбца. Даже, если один столбец в таблице, всё равно получим кортеж состоящий из одного элемента.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version