ホームページ  >  記事  >  データベース  >  python mysql数据库 'latin

python mysql数据库 'latin

WBOY
WBOYオリジナル
2016-06-07 15:52:451254ブラウズ

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 . s

"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:

<code><span>db</span><span>.</span><span>set_character_set</span><span>(</span><span>'utf8'</span><span>)</span><span>
dbc</span><span>.</span><span>execute</span><span>(</span><span>'SET NAMES utf8;'</span><span>)</span><span> dbc</span><span>.</span><span>execute</span><span>(</span><span>'SET CHARACTER SET utf8;'</span><span>)</span><span>
dbc</span><span>.</span><span>execute</span><span>(</span><span>'SET character_set_connection=utf8;'</span><span>)</span></code>

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

意思就是MySQLdb正常情况下会尝试将所有的内容转为latin1字符集处理
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。