我正在使用Flask和MySQL开发一个相当简单的Web应用程序。
我正在努力争取unicode。用户有时会粘贴他们从Word复制的内容,并且会使用旧的智能引号u'\u201c'
进行粘贴。
一些调查显示我与MySQL的连接使用的是Latin1
字符集(似乎是默认设置)。
如何指定使用unicode进行连接?
我正在使用pyMySQL,它声称是MySQLdb的替代品。 MySQLdb为set_character_set(self, charset)
个对象定义了connection
函数,但pyMySQL没有(如果我尝试的话,我会收到错误)。
答案 0 :(得分:56)
我通过在pyMySQL source中探索来解决这个问题(我曾尝试过,但找不到合适的地方!)。
您可以在创建连接时指定它:
conn = pymysql.connect(host='localhost',
user='username',
passwd='password',
db='database',
charset='utf8')
解决了我的问题。