問題:
python2.7 查詢或者插入中文資料在mysql中的時候出現中文亂碼
可能情況:
1.mysql資料庫各項沒有設定編碼,預設www.cppcns.com為'latin'
2.使用mysql.connect的時候沒有設定預設編碼
3.沒有設定python的編碼,python2.7預設為'ascii'
4.沒有程式設計客棧解碼
解決方法:
1.設定mysql的編碼
ubuntu執行下列語句:
** sudo vim /etc/mysql/my.cnf **
然後在裡面插入語句:
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
退出 vim
重新啟動mysql:
** sudo service mysql restart **
2.在code中設定mysqldb的連線編碼引數
db=mysqldb.connect(user='...',db='...',passwd='...',host='...',charset='utf8')
3.在code中設定python預設編碼
# -*-colonttzchdi -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
4.記得要解碼
t = curso程式設計客棧r.fetchall()
s = t[0][1].decode('utf-8')
本文標題: python查詢mysql中文亂碼問題
本文位址:
python中文編碼查詢 python中文編碼問題
在python中顯示中文注釋和輸出中文 a 中文 print a 返回錯誤 d python27 python.exe d test 中文.py process started file d test 中文.py line 1 syntaxerror non ascii character xe5 ...
python查詢中文字元
filename seek.py import unicodedata import sys import os class seek 功能 查詢中文,並替換成指定字元或字串 使用方法 python指令碼用法 引數說明 d 檔案目錄 絕對或相對路徑 預設為指令碼所在目錄 t 檔案型別 檔名字尾,如....
mysql 查詢按照中文進行排序
在mysql中我們使用order by來實現查詢排序,如 select from member order by id asc 查詢使用者表並按照id正序排序 select from member order by id desc 查詢使用者表並按照id倒序排序但是我們如果想要排序的字段為中文時,這...