如何从Mysql中导出数据到excel文件中

69次阅读
没有评论

共计 1514 个字符,预计需要花费 4 分钟才能阅读完成。

这篇文章给大家介绍如何从 Mysql 中导出数据到 excel 文件中,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

每次通过 intooufile 导出数据文件成 excel 表格式 下载到本地后都会成为乱码  
百度后 通过转码的方式发现还是不行,只能通过导成 txt 格式再另存的方式成 excel 格式,相当麻烦,于是自己写个脚本来达到目的
源码

#!/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) # 创建一个 Excel 文件
worksheet = workbook.add_worksheet() # 创建一个工作表对象

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

### 写入数据
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() 

执行:demo3.xlsx 下载到本地打开无乱码
[root@host-192-168-6-254 soft]# ls
demo3.xlsx  xls.py

关于如何从 Mysql 中导出数据到 excel 文件中就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-19发表,共计1514字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)