如何從Mysql中導(dǎo)出數(shù)據(jù)到excel文件中

這篇文章給大家介紹如何從MySQL中導(dǎo)出數(shù)據(jù)到excel文件中,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、成都做網(wǎng)站、霍爾果斯網(wǎng)絡(luò)推廣、小程序開(kāi)發(fā)、霍爾果斯網(wǎng)絡(luò)營(yíng)銷、霍爾果斯企業(yè)策劃、霍爾果斯品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供霍爾果斯建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:muchs.cn

每次通過(guò)intooufile 導(dǎo)出數(shù)據(jù)文件成excel表格式 下載到本地后都會(huì)成為亂碼 
百度后 通過(guò)轉(zhuǎn)碼的方式發(fā)現(xiàn)還是不行,只能通過(guò)導(dǎo)成txt格式再另存的方式成excel格式,相當(dāng)麻煩,于是自己寫個(gè)腳本來(lái)達(dá)到目的
源碼

  1. #!/usr/bin/python
    # -*- coding: utf-8 -*-
    import MySQLdb                                                 
    import xlsxwriter
    import os
    import sys
    os.remove('demo3.xlsx')
    #default_encoding = 'utf8'
    #if sys.getdefaultencoding() != default_encoding:
    #    reload(sys)
    #    sys.setdefaultencoding(default_encoding)


    conn=MySQLdb.connect(user="root",passwd="NuyBc6jdYwU9oQ",db="vip",port=3306,host="127.0.0.1",charset="utf8")
    cursor =conn.cursor()                                          


    sql="**************"


    n=cursor.execute(sql)                                            
    print "row count is :",n                                                           


    row=cursor.fetchall()
    col=len(row[1])                                              
    print "col count is:",col                                                


    workbook = xlsxwriter.Workbook('demo3.xlsx') # 創(chuàng)建一個(gè) Excel 文件
    worksheet = workbook.add_worksheet() # 創(chuàng)建一個(gè)工作表對(duì)象


    colname=['?','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']



    ####寫入表頭(即列名)
    k=1
    for field_desc in cursor.description:
            name=colname[k]+"%s" % 1
            m=field_desc[0].decode('utf-8')           ###中文別名需要加utf-8
            print m
            worksheet.write(name,u'%s' % m)
            k=k+1




    ###寫入數(shù)據(jù)
    i=2
    for data in row:
            rowname="A%s" % i
            print "now is:",rowname
            j=1
    for m in data:
                name=colname[j]+"%s" % i
                print m
                  
                worksheet.write(name,u'%s' % m)


                j=j+1
            i=i+1

    workbook.close()

    cursor.close()                                                        
    conn.close() 

執(zhí)行:demo3.xlsx 下載到本地打開(kāi)無(wú)亂碼
[root@host-192-168-6-254 soft]# ls
demo3.xlsx  xls.py

關(guān)于如何從Mysql中導(dǎo)出數(shù)據(jù)到excel文件中就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

本文名稱:如何從Mysql中導(dǎo)出數(shù)據(jù)到excel文件中
標(biāo)題來(lái)源:http://muchs.cn/article48/jpgphp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站內(nèi)鏈、云服務(wù)器、網(wǎng)站制作、網(wǎng)站收錄、

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)