[Python]MySQL中文字元與Python中文字元
- #-*-coding:utf-8-*-
#-*-coding:utf-8-*-
2某些環境下可以使用這個: Python代碼
- reload(sys);sys.setdefaultencoding("utf-8")
reload(sys);sys.setdefaultencoding("utf-8")
3python的字元串分為"unicode"和"str" -1 str 是指帶有編碼的字元串 -2 unicode 是指不帶有編碼的字元串 這兩個概念的相互轉換是這樣進行的: str ------> unicode --------> str decode encode 解碼 編碼 舉個最簡單的例子: Python代碼
- <DIVclass=quote_title>引用</DIV><DIVclass=quote_div>>>>a="中"
- >>>a
- "xd6xd0"
- >>>b=u"中"
- >>>b</DIV>u"u4e2d"[color=red][b]即保存"中"的gbk值做為b[/b]
引用>>> a = "中">>> a"xd6xd0">>> b = u"中">>> bu"u4e2d" [color=red][b]即保存"中"的gbk值做為b[/b]
根據上面的描述,b應該是不進行編碼的a的值(反正a就是b帶有gbk編碼的值) 於是,我們可以得到 >>> a.decode( "gbk" ) u"u4e2d" 同樣也可以得到 >>> b.encode( "gbk" ) "xd6xd0" 所以一般的 Python代碼
- xxx.decode("gbk").encode("utf-8")
xxx.decode("gbk").encode("utf-8")
4.MySQLdb操作 Python代碼
- conn=MySQLdb.connect(host,usr,pwd,db,charset="utf8")
conn=MySQLdb.connect(host,usr,pwd,db,charset="utf8")
PHP讀取操作: Php代碼
- <?php
- $conn=mysql_connect($hostname="127.0.0.1",$username="root",$password="");
- mysql_select_db("text");
- mysql_query("setnames"utf8"");
- $sql="selecttextfromtextwhereid=1";
- $result=mysql_query($sql,$conn);
- while($row=mysql_fetch_assoc($result)){
- print$row["text"];
- }
- ?>
<?php$conn=mysql_connect($hostname="127.0.0.1",$username="root",$password="");mysql_select_db("text");mysql_query("set names "utf8"");$sql="select text from text where id = 1";$result=mysql_query($sql,$conn);while ($row = mysql_fetch_assoc($result)){print $row["text"];}?>
更多可以參考: http://www.blogjava.net/vulcan/articles/160978.html http://www.yuanma.org/data/2006/0907/article_1476.htm
推薦閱讀:
※秋色斑斕,文字絢爛
※美國動作/戰爭電影《陰影突擊隊》[中文字幕版]
※阿拉伯字母是不是從古到今沒有變化(就類似於漢字的甲骨文到簡體中文的變化那類的)?
※你是我筆下寫不完的文字
※修行與生活座談會 第四十三集(國語) 視頻、文字