Python操作MySQL以及中文乱码的问题
来源:互联网 发布:3d电影百度云淘宝 编辑:程序博客网 时间:2024/04/29 23:14
http://blog.csdn.net/foyuan/article/details/1711100
Python操作MySQL以及中文乱码的问题
Python操作MySQL需要安装Python-MySQL
可以从网上搜索一下,和一般的Python包一样安装
安装好之后,模块名字叫做MySQLdb ,在Window和Linux环境下都可以使用,试验了一下挺好用,
不过又发现了烦人的乱麻问题,最后用了几个办法,解决了!
我用了下面几个措施,保证MySQL的输出没有乱麻:
1 Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
2 MySQL数据库charset=utf-8
3 Python连接MySQL是加上参数 charset=utf8
4 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8)
mysql_test.py
#encoding=utf-8
import sys
import MySQLdb
reload(sys)
sys.setdefaultencoding('utf-8')
db=MySQLdb.connect(user='root',charset='utf8')
cur=db.cursor()
cur.execute('use mydb')
cur.execute('select * from mytb limit 100')
f=file("/home/user/work/tem.txt",'w')
for i in cur.fetchall():
f.write(str(i))
f.write(" ")
f.close()
cur.close()
import sys
import MySQLdb
reload(sys)
sys.setdefaultencoding('utf-8')
db=MySQLdb.connect(user='root',charset='utf8')
cur=db.cursor()
cur.execute('use mydb')
cur.execute('select * from mytb limit 100')
f=file("/home/user/work/tem.txt",'w')
for i in cur.fetchall():
f.write(str(i))
f.write(" ")
f.close()
cur.close()
上面是linux上的脚本,windows下运行正常!
注:MySQL的配置文件设置也必须配置成utf8
设置 MySQL 的 my.cnf 文件,在 [client]/[mysqld]部分都设置默认的字符集(通常在/etc/mysql/my.cnf):
[client]default-character-set = utf8[mysqld]default-character-set = utf8
0 0
- Python操作MySQL以及中文乱码的问题
- Python操作MySQL以及中文乱码的问题
- Python操作MySQL以及中文乱码的问题
- Python操作MySQL以及中文乱码的问题
- python操作mysql数据库如何解决中文乱码的问题
- python操作mysql中文乱码问题
- MySQL的字符集以及中文乱码问题
- python 操作mysql 中文乱码
- 【Python】Mysql中文乱码问题与MySQLdb对Mysql操作类的改进
- Python mysqldb 操作mysql出现中文乱码问题
- MYSQL 操作中文乱码问题
- Python mysql中文乱码问题
- Python 操作MySQL中文显示乱码的解决方法
- 解决Mysql中文乱码以及Incorrect string value的问题
- MySQL安装以及中文乱码问题
- Mysql中文查找不到,以及乱码问题
- mysql编码问题以及中文乱码解决
- 解决mac平台的mysql+python的中文乱码问题
- Unable to Drop a Datafile From the Tablespace Using Alter Tablespace Command (Doc ID 1050261.1)
- 程序员学习能力提升三要素
- 《effective STL》读书笔记
- 遇见未知的自己杂感
- IOS 获取安装的app
- Python操作MySQL以及中文乱码的问题
- 分布式系统的事务处理
- jpa
- unity 汉化
- maven忽略单元测试中的错误继续构建工程
- mount: 192.168.1.xxx:/work/nfs_root failed, reason given by server: Permission denied 的解决办法
- 【LeetCode】Unique Paths II 解题报告
- 如何生成一个 WinCE 下文件全路径大于 MAX_PATH(260) 字节的文件路径?
- 关于MyEclipse SVN显示资源历史记录乱码问题