如果我尝试在其中运行带有此行的python文件:
cursor.execute("SELECT GameName FROM GamesTable WHERE GameName = 'Sid Meier's Civilization® IV'")
PuTTY给了我错误:
pymysql.err.ProgrammingError: (1064, u"You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right syntax to use near 's
Civilization\xae IV'' at line 1")
所以它显然无法读取®符号。
我一直在搜索,人们说要确保远程字符集是UTF-8,它就是。
此外,PuTTY似乎处理符号很好 - 如果我只是写print "®"
然后它正确打印符号。只有在尝试使用pymysql到达sql server时才会出现问题。
答案 0 :(得分:0)
unicode错误? (假设是python 2)
gname =" Sid Meier'文明" + unichr(174)+" IV'"
然后
gname.encode(' UTF-8&#39)
给出了 " Sid Meier的文明\ xc2 \ xae IV"