Python读取mysql数据库数据出现中文乱码
2018-02-01 13:00
330 查看
Python连接mysql数据库时,读取数据库中的中文出现乱码,所有中文都显示为问号了,我解决问题的步骤如下:
开发环境
执行pip install PyMySQL 完成pyMySQL安装
数据库部分
python代码
执行结果
解决乱码方法如下:
Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
MySQL数据库charset=utf-8
Python连接MySQL是加上参数 charset=’utf8’
读取数据后写入文件前执行编码book[0].encode(‘utf-8’)
最后测试的时候发现只需在连接MySQL的时候加上charset=’utf8’即可,以utf-8编码格式读取数据,其他条件无需添加,也不会出现从mysql中读取的数据出现中文乱码的情况。其他方法加上也没有问题,为了
修改后python代码
修改后的执行结果
希望以上的笔记能帮到各位码友,如有出错请告知,谢谢各位码友。~///(^v^)\\~
开发环境
- Python版本:python3.6 - MySql版本:mysql-5.5.56-winx64 - PyMySQL 版本:PyMySQL (0.7.11)
执行pip install PyMySQL 完成pyMySQL安装
数据库部分
-- 建表语句 CREATE TABLE books ( name varchar(50) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 插入数据 insert into books values('万物生光辉'); insert into books values('我亲爱的甜橙树'); insert into books values('教父'); insert into books values('故事'); insert into books values('树上的男爵'); insert into books values('罗马人的故事2'); insert into books values('秘岛(全三册)');
python代码
#!/usr/bin/env python import pymysql.cursors connection = pymysql.connect(user='用户名', passwd='密码', db='数据库名') cursor = connection.cursor() ex = cursor.execute("select name from books") books = cursor.fetchmany(ex) for book in books: print("%s" % book[0]) connection.close()
执行结果
解决乱码方法如下:
Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
MySQL数据库charset=utf-8
Python连接MySQL是加上参数 charset=’utf8’
读取数据后写入文件前执行编码book[0].encode(‘utf-8’)
最后测试的时候发现只需在连接MySQL的时候加上charset=’utf8’即可,以utf-8编码格式读取数据,其他条件无需添加,也不会出现从mysql中读取的数据出现中文乱码的情况。其他方法加上也没有问题,为了
修改后python代码
#!/usr/bin/env python import pymysql.cursors # 在连接Mysql的时候添加charset='utf8'即可解决中文乱码问题 connection = pymysql.connect(user='用户名', passwd='密码', db='数据库名', charset='utf8') cursor = connection.cursor() ex = cursor.execute("select name from books") books = cursor.fetchmany(ex) for book in books: print("%s" % book[0]) connection.close()
修改后的执行结果
希望以上的笔记能帮到各位码友,如有出错请告知,谢谢各位码友。~///(^v^)\\~
相关文章推荐
- python读取独立mysql数据库中的数据发送中文乱码
- php读取mysql中文数据出现乱码的解决方法
- python读MySQL数据库出现中文乱码问题
- Java、JSP插入数据到MySQL数据库时出现中文乱码的最终解决方案
- MySQL插入或者读取中文数据的时候出现乱码总结
- PHP获取客户端数据保存到MySQL数据库 出现中文乱码解决方案
- Python读取MySQL数据中文乱码
- 解决PHP写入、读取MYSQL数据库数据中文乱码问题
- PHP获取客户端数据保存到MySQL数据库 出现中文乱码解决方案
- JSP连接mysql数据库导出数据出现中文乱码(问号)
- 解决方法:ASP读取数据库中的中文数据出现乱码的问题
- php读取mysql中文数据出现乱码的解决方法
- Windows下php页面读取 mysql"中文数据"出现乱码的解决方法
- python的sqlaclchemy模块连接mysql数据出现中文乱码问题
- mysql数据库中数据表出现中文乱码的解决办法
- MySQL数据库 查询表数据出现中文乱码 及 插入中文报错Incorrect string value问题解决方法
- python读取数据库数据,读取出的中文乱码问题
- 遇到问题-用StreamReader读取数据时出现乱码,streamwriter写入中文时出现乱码
- Hadoop Sqoop;从HDFS导入数据到MYSQL数据库中出现中文字符乱码
- 遇到问题-用StreamReader读取数据时出现乱码,streamwriter写入中文时出现乱码