@vladvaraks

Как поставить правильную кодировку в mysql-connector-python?

Доброго времени суток! При попытке достать данные из базы mysql вместо русских букв выводятся непонятные символы, очень хотелось адекватный вывод данных, менял charset на utf8, не помогает. Подскажите, пожалуйста, как можно повлиять на правильность данных

Информация:
Версия сервера - mysql server 5.0.67
Кодировка базы - latin1
Collatin - latin1_swedish_ci
Пакет mysql-connector-python 8.0.5

Код для подключения к базе:
import mysql.connector

cnx = mysql.connector.connect(host="localhost",
                                port=3306,
                                database='oc',
                                charset='latin1',
                                collation='latin1_swedish_ci',
                                user="root",
                                password="")


Вывод запроса в консоль:
[(1, 'Íàëè÷íûå'),
(2, 'Äèñêîíòíûå êàðòû'),
(3, 'Òîïëèâíûå êàðòû'),
(4, 'Äèñêîíòíûå êàðòû'),
(5, 'Òîïëèâíûå êàðòû'),
(6, 'Äèñêîíòíûå êàðòû'),
(7, 'Òîïëèâíûå êàðòû')]
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
@rPman
Кодировка базы latin не предполагает хранение русских символов, по техническим причинам, соответственно коннектор понятия не имеет как твои символы корректно переводить в utf8.

Мало того, данные в базе как то оказались? В какой кодировке их туда помещали? Вот как помещал, так и извлекай
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы