首页 > 编程 > Python > 正文

python3实现mysql导出excel的方法

2019-11-25 12:09:04
字体:
来源:转载
供稿:网友

Mysql中'employee'表内容如下:

# __Desc__ = 从数据库中导出数据到excel数据表中import xlwtimport pymysqlclass MYSQL:  def __init__(self):    pass  def __del__(self):    self._cursor.close()    self._connect.close()  def connectDB(self):    """    连接数据库    :return:    """    try:      self._connect = pymysql.Connect(        host='localhost',        port=3306,        user='root',        passwd='123456',        db='test',        charset='utf8'      )      return 0    except:      return -1  def export(self, table_name, output_path):    self._cursor = self._connect.cursor()    count = self._cursor.execute('select * from '+table_name)    # print(self._cursor.lastrowid)    print(count)    # 重置游标的位置    self._cursor.scroll(0, mode='absolute')    # 搜取所有结果    results = self._cursor.fetchall()    # 获取MYSQL里面的数据字段名称    fields = self._cursor.description    workbook = xlwt.Workbook()    # 注意: 在add_sheet时, 置参数cell_overwrite_ok=True, 可以覆盖原单元格中数据。    # cell_overwrite_ok默认为False, 覆盖的话, 会抛出异常.    sheet = workbook.add_sheet('table_'+table_name, cell_overwrite_ok=True)    # 写上字段信息    for field in range(0, len(fields)):      sheet.write(0, field, fields[field][0])    # 获取并写入数据段信息    row = 1    col = 0    for row in range(1,len(results)+1):      for col in range(0, len(fields)):        sheet.write(row, col, u'%s' % results[row-1][col])    workbook.save(output_path)if __name__ == '__main__':  mysql = MYSQL()  flag = mysql.connectDB()  if flag == -1:    print('数据库连接失败')  else:    print('数据库连接成功')    mysql.export('employee', 'E:/test_input.xls')

执行结果如下:

总结

以上所述是小编给大家介绍的python3实现mysql导出excel的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表