在我们用python连接MySQL数据库时,倘若我们要把一串中文导入到数据库的表里面,通常会出现导入失败或乱码现象,下面提供几个解决方案:
一、SyntaxError: Non-ASCII character '\xe6' in file XXX.py on line 6, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details类似提示的错误,是因为python的默认编码是ASCII码,而中文的编码一般是’utf8',我们要在code中改变其默认编码,只需在代码前添加
# -*- coding: UTF-8 -*-二、将中文导入到MySQL数据库的表中时,中文出现乱码,应在连接数据库时加入代码
charset='utf8'
完整的为:conn = MySQLdb.connect(
host = 'localhost', #本地主机,默认为'localhost'
port = 3306, #端口,默认为3306
user = 'root', #用户名,默认为'root'
passwd = '123456', #密码,自设
db ='test', #连接名为'test'的数据库
<strong>charset='utf8'</strong>
)三、倘若依然是乱码,应检查一下数据库的表,记录所对应的类型(一般为text)编码是否为‘utf8’,对应得上的话一般没有就不会出现中文乱码的情况。
以上为关于python连接MySQL时,中文乱码问题解决方案,希望对大家有所帮助!如有错误,希望大家可以提出,并多多包涵,相互学习!

本文提供了解决Python连接MySQL数据库时中文乱码问题的三个方案:修改默认编码、连接数据库时指定编码、检查数据库表记录类型编码是否为utf8。


被折叠的 条评论
为什么被折叠?



