• ADADADADAD

    如何从Mysql中导出数据到excel文件中[ mysql数据库 ]

    mysql数据库 时间:2024-11-26 22:10:09

    作者:文/会员上传

    简介:

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

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    每次通过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文件中.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlexcel