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()
上面是linux上的腳本,windows下運行正常!
注:MySQL的配置文件設置也必須配置成utf8
設置 MySQL 的 my.cnf 文件,在 [client]/[mysqld]部分都設置默 認的字符集(通常在/etc/mysql/my.cnf):
[client]
default-character-set = utf8
[mysqld]
default-character-set = utf8