繁体   English   中英

Python / Mysql俄语INSERT

[英]Python/Mysql Russian INSERT

尝试使用俄语进行INSERT时遇到以下错误:

sql =   """SELECT provider FROM main_app_provider WHERE provider LIKE %s"""
cursor.execute(sql, args)

[ print statement ]
SELECT provider FROM main_app_provider WHERE provider LIKE Централ%
  ...
  File "/Library/Python/2.7/site-packages/MySQLdb/connections.py", line 202, in unicode_literal
return db.literal(u.encode(unicode_literal.charset))
UnicodeEncodeError: 'latin-1' codec can't encode characters 
in position 0-6: ordinal not in range(256)

我该如何解决这个问题?

MySQLdb默认使用latin-1,你必须设置你想要它使用的字符集。 (看到这个问题: mysqldb的python编码问题

我在创建连接时这样做,例如

conn=MySQLdb.connect(hostname, username, password, database, charset='utf8')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM