python mysql数据库 'latin-1' codec can't encode character错误问题解决

Posted jlf0103

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python mysql数据库 'latin-1' codec can't encode character错误问题解决相关的知识,希望对你有一定的参考价值。

UnicodeEncodeError: ‘latin-1‘ codec can‘t encode character

 

"UnicodeEncodeError:‘latin-1‘ codec can‘t encode character ..."

This is because MySQLdb normally tries to encode everythin to latin-1. This can be fixed by executing the following commands right after you‘ve etablished the connection:

db.set_character_set(utf8)
dbc.execute(SET NAMES utf8;) dbc.execute(SET CHARACTER SET utf8;)
dbc.execute(SET character_set_connection=utf8;)

 

"db" is the result of MySQLdb.connect, and "dbc" is the result of db.cursor().

意思就是MySQLdb正常情况下会尝试将所有的内容转为latin1字符集处理
 
所以处理方法就是,设置连接和游标的charset为你所希望的编码,如utf8

 

db是connection连接,dbc是数据库游标

http://stackoverflow.com/questions/3942888/unicodeencodeerror-latin-1-codec-cant-encode-character

以上是关于python mysql数据库 'latin-1' codec can't encode character错误问题解决的主要内容,如果未能解决你的问题,请参考以下文章

python连接MYSQL数据库,调用update语句后无法更新数据,求大神解决

MySQL中的快速反规范化视图,如何?

python怎样将数据存入mysql数据库

python操作mysql之mysql详解

48.Python中ORM模型实现mysql数据库基本的增删改查操作

python mysql数据库 'latin-1' codec can't encode character错误问题解决