最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

使用環(huán)境:

Python 2.5 for Windows
MySQLdb 1.2.2 for Python 2.5
MySQL 4.1.22

在寫程序中遇到了些怪的故障。

第一個問題:插入中文失敗

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

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

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

經(jīng)過檢查數(shù)據(jù)可以被正確的插入,但是連接斷開之后不保存在表中。經(jīng)過檢查發(fā)現(xiàn)原來是漏了conn.commit()。需要在語句執(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() #生成連接的指針對象
#進(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語句
param=('600000',a) #生成sql語句的參數(shù)
n = cursor.execute(sql,param) #執(zhí)行sql語句
#以上操作等價于n = cursor.execute("insert into stocklist (stockno,stockname) values ('430004','"+ "浦發(fā)銀行".decode("gbk").encode("utf-8") + "')")
print n
conn.commit() #提交操作結(jié)果
#進(jì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ù)問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域

    Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域

    這篇文章主要為大家詳細(xì)介紹了如何通過Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-04-04
  • Pytest allure 命令行參數(shù)的使用

    Pytest allure 命令行參數(shù)的使用

    這篇文章主要介紹了Pytest allure 命令行參數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • python 實(shí)現(xiàn)調(diào)用子文件下的模塊方法

    python 實(shí)現(xiàn)調(diào)用子文件下的模塊方法

    今天小編就為大家分享一篇python 實(shí)現(xiàn)調(diào)用子文件下的模塊方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python實(shí)現(xiàn)包含min函數(shù)的棧

    Python實(shí)現(xiàn)包含min函數(shù)的棧

    這篇文章主要介紹了Python實(shí)現(xiàn)包含min函數(shù)的棧,可實(shí)現(xiàn)棧中元素的計算及進(jìn)棧出棧等操作,需要的朋友可以參考下
    2016-04-04
  • python二叉樹常用算法總結(jié)

    python二叉樹常用算法總結(jié)

    這篇文章主要分享的是python二叉樹常用算法,二叉樹的遞歸思想很重要,還有遞歸的復(fù)雜度分析,需下面文章就來詳細(xì)解說該算法,要的朋友可以參考一下
    2021-09-09
  • python字符串替換re.sub()方法解析

    python字符串替換re.sub()方法解析

    這篇文章主要介紹了python字符串替換re.sub()方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • Python解釋器以及PyCharm的安裝教程圖文詳解

    Python解釋器以及PyCharm的安裝教程圖文詳解

    PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語言開發(fā)時提高其效率的工具。這篇文章主要介紹了Python解釋器以及PyCharm的安裝教程圖文詳解,需要的朋友可以參考下
    2020-02-02
  • 使用python實(shí)現(xiàn)excel的Vlookup功能

    使用python實(shí)現(xiàn)excel的Vlookup功能

    這篇文章主要介紹了使用python實(shí)現(xiàn)excel的Vlookup功能,當(dāng)我們想要查找的數(shù)據(jù)量較大時,這時則有請我們的主角VLookup函數(shù)出場,那么如何用python實(shí)現(xiàn)VLookup呢,需要的朋友可以參考下
    2023-04-04
  • python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼

    python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼

    這篇文章主要介紹了python 創(chuàng)建彈出式菜單的實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 通過Python使用saltstack生成服務(wù)器資產(chǎn)清單

    通過Python使用saltstack生成服務(wù)器資產(chǎn)清單

    人工去對每一臺服務(wù)器的硬件信息并記錄早已經(jīng)過去了,無論通過腳本還是自動化工具都是可以進(jìn)行一次編寫到處抓取的,本文主要使用saltstack作為使用工具,然后利用其提供的APi編寫所需的Python腳本
    2016-03-03

最新評論

屏南县| 科技| 浑源县| 丰都县| 南开区| 肇州县| 乐平市| 通化县| 阿巴嘎旗| 白河县| 日土县| 宜兰市| 塔城市| 酒泉市| 泾川县| 巫山县| 长丰县| 泰州市| 新闻| 营山县| 五大连池市| 宿迁市| 苗栗县| 定南县| 巴林左旗| 托克逊县| 武鸣县| 宁波市| 名山县| 阜新市| 宾川县| 理塘县| 卓资县| 遵义县| 文安县| 油尖旺区| 卢氏县| 晋中市| 松溪县| 钟山县| 泸水县|