мне нужно писать decode () каждый раз для печати данных - PullRequest
0 голосов
/ 26 января 2019

извлекаю данные из моей базы данных и печатаю их, но мне приходится каждый раз писать: decode() кто-то сказал, что добавить "charset=utf", тогда вам не нужно добавлять decode() каждый раз, я сделал это, но это не работает, якаждый раз приходится писать decode () с печатью.

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="",
  database="testing",
  charset = 'utf8',
  use_unicode=True
)

mycursor = mydb.cursor()

sql = "SELECT * FROM content WHERE id =2 limit 1"

mycursor.execute(sql)

row = mycursor.fetchone()

while row is not None:
    print(row[0]) #this is not working
    print(row.decode(0))
    print(row.decode(1))
    print(row.decode(2))
    row = mycursor.fetchone()

Также пытался использовать For, но получал те же результаты.

for i in row:
  print(i[1])

Моя БД выглядит так (например, просто для практики)

id,name,age,city

вот эти 4 столбца

Проблема: если я не добавлю decode() с печатью, то будут показаны данные, подобные этой.

print(row[1])

bytearray(b'Richard')
...