python3实现mysql导出excel
Mysql中'employee'表内容如下:
1 # __Desc__ = 从数据库中导出数据到excel数据表中 2 import xlwt 3 import pymysql 4 5 6 class MYSQL: 7 def __init__(self): 8 pass 9 10 def __del__(self): 11 self._cursor.close() 12 self._connect.close() 13 14 def connectDB(self): 15 """ 16 连接数据库 17 :return: 18 """ 19 try: 20 self._connect = pymysql.Connect( 21 host='localhost', 22 port=3306, 23 user='root', 24 passwd='123456', 25 db='test', 26 charset='utf8' 27 ) 28 29 return 0 30 except: 31 return -1 32 33 def export(self, table_name, output_path): 34 self._cursor = self._connect.cursor() 35 count = self._cursor.execute('select * from '+table_name) 36 # print(self._cursor.lastrowid) 37 print(count) 38 # 重置游标的位置 39 self._cursor.scroll(0, mode='absolute') 40 # 搜取所有结果 41 results = self._cursor.fetchall() 42 43 # 获取MYSQL里面的数据字段名称 44 fields = self._cursor.description 45 workbook = xlwt.Workbook() 46 47 # 注意: 在add_sheet时, 置参数cell_overwrite_ok=True, 可以覆盖原单元格中数据。 48 # cell_overwrite_ok默认为False, 覆盖的话, 会抛出异常. 49 sheet = workbook.add_sheet('table_'+table_name, cell_overwrite_ok=True) 50 51 # 写上字段信息 52 for field in range(0, len(fields)): 53 sheet.write(0, field, fields[field][0]) 54 55 # 获取并写入数据段信息 56 row = 1 57 col = 0 58 for row in range(1,len(results)+1): 59 for col in range(0, len(fields)): 60 sheet.write(row, col, u'%s' % results[row-1][col]) 61 62 workbook.save(output_path) 63 64 65 if __name__ == '__main__': 66 mysql = MYSQL() 67 flag = mysql.connectDB() 68 if flag == -1: 69 print('数据库连接失败') 70 else: 71 print('数据库连接成功') 72 mysql.export('employee', 'E:/test_input.xls')
执行结果如下:
转载于:https://www.cnblogs.com/fuqia/p/8993843.html
python3实现mysql导出excel相关推荐
- python3 根据sql导出excel文件 支持xls和xlsx
python3 根据sql导出excel文件 支持xls和xlsx 代码简介: sql_output_excel函数是用来导出excel文件的,其他两个函数是导出xls和xlsx格式的. 使用pymy ...
- Navicat for MySQL 导出 Excel 时身份证号惨遭科学计数
Navicat for MySQL 导出 Excel 时身份证号惨遭科学计数 身份证号前加单引号 参考资料 身份证号前加单引号 身份证号直接导出会丢失精度,只有前15位,后三位直接变成 0 了. 依据 ...
- mysql导出excel 科学计数法_mysql导出长数字到excel避免显示为科学记数法 解决方法...
经常遇到MYSQL导出长数字或纯数字字符串(如身份证.卡券号.条码.流水号等)到csv或excel文件,用excel打开会显示为科学记数法,甚至后几位转为0.这是由Excel的特性决定的:Excel显 ...
- mysql导出excel命令,在命令行导出MySQL数据到excel表
有时候需要将 MySQL 的数据导出成 excel,这很简单,无需第三方工具,直接 MySQL 命令行就自带了这样的功能.比如: SELECT * FROM nowamagic into outfil ...
- mysql导出excel出乱码_Mysql中文乱码以及导出为sql语句和Excel问题解决方法[图文]...
一.导出数据. 先说明一下自己的环境:Mac OS X 10.8.3, MySQL Community Server 5.6.10, MySQL Workbench 5.2.47. 我想把本机数据库内 ...
- 解决mysql导出Excel中文乱码问题
解决Excel导入mysql数据库时汉字乱码的问题 1. 前提:数据库采用的是UTF-8编码 2. 将Excel另存为csv格式,导入mysql后如果出现乱码,说明转换后的csv文件不是UTF-8 ...
- MySQL导出到excle显示不了_mysql导出select语句结果到excel文件遇到问题及解决方法_MySQL...
一.导出数据外部 1)mysql连接+将查询结果输出到文件.在命令行中执行(windows的cmd命令行,mac的终端) mysql -hxx -uxx -pxx -e "query sta ...
- mysql导出长数字到excel避免显示为科学记数法 解决方法
mysql导出长数字到excel避免显示为科学记数法 解决方法 参考文章: (1)mysql导出长数字到excel避免显示为科学记数法 解决方法 (2)http://www.cnblogs.com/z ...
- SpringMVC+Hibernate +MySql+ EasyUI实现POI导出Excel(二)
为什么80%的码农都做不了架构师?>>> SpringMVC+Hibernate +MySql+ EasyUI实现CRUD(一) 大概的截图.很简单的小功能 注:使用的是MyEcli ...
最新文章
- 网易Q2季报图解:游戏营收重回百亿 净利同比降29%
- 小余学调度:学习记录(2021年12月)
- LDA主题模型原文解读
- javascript --- 实现对象的深拷贝
- 来了!小米9发布时间确定:2月20日见 为你而战
- List转Map的几种方式
- 计算机应用基础电子教案吉林,中等职业学校计算机应用基础课程改革初探.doc...
- vue 实现定位到当前位置
- 海尔电视 android,海尔电视遥控器
- 内存空间的分配与回收
- PAT B 1068 万绿丛中一点红(C语言)*排除法
- 与“十“俱进 阿里数据库运维10年演进之路
- 基于Qt的智能车载系统嵌入式项目(正点原子IMX6ULL开发板)
- sin60度 用计算机,cos60度等于多少啊
- 【离散数学】数理逻辑 第一章 命题逻辑(7) 命题逻辑的推理理论
- 网页快照(Snapshot)使用的相关研究(萌新向总结)
- java liferay 框架_liferay6.2-生成布局模板
- 纯css打造超能陆战队--大白
- [茶香人家:原创资料]武夷岩茶冲泡实战篇
- Python Tkinter ListBox添加滚动条Scrollbar