欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問(wèn)題

 更新時(shí)間:2018年03月13日 11:58:11   作者:dkman803  
這篇文章主要介紹了Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問(wèn)題,需要的朋友可以參考下

最近幫伙計(jì)做了一個(gè)從網(wǎng)頁(yè)抓取股票信息并把相應(yīng)信息存入MySQL中的程序。

使用環(huán)境:

Python 2.5 for Windows
MySQLdb 1.2.2 for Python 2.5
MySQL 4.1.22

在寫(xiě)程序中遇到了些怪的故障。

第一個(gè)問(wèn)題:插入中文失敗

 這個(gè)是由于字符編碼問(wèn)題引起的。MySQL安裝時(shí)我已經(jīng)設(shè)置為utf8編碼,表也是使用utf8編碼建立。程序中只要在開(kāi)頭寫(xiě)好#-*- coding: utf-8 -*-,并在設(shè)定連接字符串時(shí)候?qū)懬迨褂胾tf8就可以了conn=MySQLdb.connect(host="127.0.0.1",user="webdb",passwd="web123",db="web",charset="utf8")。設(shè)置之后從MySQL中取出的以u(píng)tf8編碼保存的中文也不會(huì)發(fā)生亂碼。

對(duì)中文字符串,如:a = "浦發(fā)銀行",在進(jìn)行插入操作前做一下編碼轉(zhuǎn)換a = a.decode("gbk").encode("utf-8")。然后進(jìn)行插入操作就沒(méi)有任何問(wèn)題了。

第二個(gè)問(wèn)題:能插入之后無(wú)法在MySQL中保存剛才插入的數(shù)據(jù)

經(jīng)過(guò)檢查數(shù)據(jù)可以被正確的插入,但是連接斷開(kāi)之后不保存在表中。經(jīng)過(guò)檢查發(fā)現(xiàn)原來(lái)是漏了conn.commit()。需要在語(yǔ)句執(zhí)行之后提交操作。

源代碼如下。

#-*- coding: utf-8 -*-
import sys,MySQLdb
conn=MySQLdb.connect(host="127.0.0.1",user="webdb",passwd="web123",db="web",charset="utf8") #需要設(shè)定一下charset為utf-8
cursor=conn.cursor() #生成連接的指針對(duì)象
#進(jìn)行字符串編碼轉(zhuǎn)換并進(jìn)行插入
a = "浦發(fā)銀行"
a = a.decode("gbk").encode("utf-8") #編碼轉(zhuǎn)換為utf-8
sql="insert into stocklist (stockno,stockname) values (%s,%s)" #生成sql語(yǔ)句
param=('600000',a) #生成sql語(yǔ)句的參數(shù)
n = cursor.execute(sql,param) #執(zhí)行sql語(yǔ)句
#以上操作等價(jià)于n = cursor.execute("insert into stocklist (stockno,stockname) values ('430004','"+ "浦發(fā)銀行".decode("gbk").encode("utf-8") + "')")
print n
conn.commit() #提交操作結(jié)果
#進(jìn)行查詢(xún)操作檢查剛剛執(zhí)行的插入操作結(jié)果
n = cursor.execute("select * from stocklist")
for row in cursor.fetchall():
 print row[0] + row[1]
cursor.close() #關(guān)閉指針
conn.close() #關(guān)閉連接

總結(jié)

以上所述是小編給大家介紹的Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問(wèn)題,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python讀寫(xiě)zip壓縮文件的方法

    Python讀寫(xiě)zip壓縮文件的方法

    Python自帶模塊zipfile可以完成zip壓縮文件的讀寫(xiě),而且使用非常方便,下面我們就來(lái)演示一下Python讀寫(xiě)zip文件的實(shí)例代碼,需要的朋友參考下吧
    2018-08-08
  • 淺談Pandas Series 和 Numpy array中的相同點(diǎn)

    淺談Pandas Series 和 Numpy array中的相同點(diǎn)

    今天小編就為大家分享一篇淺談Pandas Series 和 Numpy array中的相同點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • Python實(shí)現(xiàn)銀行賬戶(hù)資金交易管理系統(tǒng)

    Python實(shí)現(xiàn)銀行賬戶(hù)資金交易管理系統(tǒng)

    這篇文章主要介紹了Python銀行賬戶(hù)資金交易管理系統(tǒng),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Keras設(shè)置以及獲取權(quán)重的實(shí)現(xiàn)

    Keras設(shè)置以及獲取權(quán)重的實(shí)現(xiàn)

    這篇文章主要介紹了Keras設(shè)置以及獲取權(quán)重的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • python內(nèi)置函數(shù)compile(),complex()的使用

    python內(nèi)置函數(shù)compile(),complex()的使用

    這篇文章主要為大家詳細(xì)介紹了python內(nèi)置函數(shù)compile(),complex()的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • python數(shù)據(jù)批量寫(xiě)入ScrolledText的優(yōu)化方法

    python數(shù)據(jù)批量寫(xiě)入ScrolledText的優(yōu)化方法

    今天小編就為大家分享一篇python數(shù)據(jù)批量寫(xiě)入ScrolledText的優(yōu)化方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • pandas中DataFrame檢測(cè)重復(fù)值的實(shí)現(xiàn)

    pandas中DataFrame檢測(cè)重復(fù)值的實(shí)現(xiàn)

    本文主要介紹了pandas DataFrame檢測(cè)重復(fù)值,主要包括了檢查整行整列的檢測(cè),以及多列是否重復(fù),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Python自動(dòng)化辦公之Excel拆分與自動(dòng)發(fā)郵件

    Python自動(dòng)化辦公之Excel拆分與自動(dòng)發(fā)郵件

    這篇文章主要何大家分享一個(gè)真實(shí)的自動(dòng)化辦公案例,即向用戶(hù)發(fā)送帶有Excel附件的電子郵件,同時(shí)必須按用戶(hù)從主Excel文件中拆分?jǐn)?shù)據(jù)以創(chuàng)建他們自己的特定文件,然后將該文件通過(guò)電子郵件發(fā)送給正確的用戶(hù),感興趣的可以了解一下
    2022-03-03
  • python繪制趨勢(shì)圖的示例

    python繪制趨勢(shì)圖的示例

    這篇文章主要介紹了python如何繪制趨勢(shì)圖,幫助大家更好的用python繪制圖像,進(jìn)行數(shù)據(jù)可視化分析,感興趣的朋友可以了解下
    2020-09-09
  • Pygame游戲開(kāi)發(fā)之太空射擊實(shí)戰(zhàn)碰撞改進(jìn)篇

    Pygame游戲開(kāi)發(fā)之太空射擊實(shí)戰(zhàn)碰撞改進(jìn)篇

    相信大多數(shù)8090后都玩過(guò)太空射擊游戲,在過(guò)去游戲不多的年代太空射擊自然屬于經(jīng)典好玩的一款了,今天我們來(lái)自己動(dòng)手實(shí)現(xiàn)它,在編寫(xiě)學(xué)習(xí)中回顧過(guò)往展望未來(lái),在本課中,我們將討論如何更改?Pygame?處理精靈之間沖突的方式
    2022-08-08

最新評(píng)論