PyMySQL返回字节而不是str

时间:2014-01-03 18:30:33

标签: python pymysql

这是一个使用pymysql(Python 3)的简单示例:

import pymysql
conn = pymysql.connect(user='admin', passwd='...', host='host', use_unicode=True)
c = conn.cursor()
c.execute("SELECT category FROM product LIMIT 0,1")
print (type(c.fetchone()[0]))

返回

  

< class'bytes'>

字段的类型是 varchar ,我想如果我指定 use_unicode = True ,它会将字段值返回为 str ,而不是字节即可。是的,我知道我可以将字节转换为str,但我不想。

是否可以马上获得str?我做错了什么?

1 个答案:

答案 0 :(得分:1)

问题在于该领域的整理。由于它设置为 utf8_bin pymysql将其计为binary,尽管它是 varchar 。将排序规则更改为 utf8_general_ci 解决了这个问题。