利用python将mysql中的数据导入excel
Python对Excel的读写主要有xlrd、xlwt、xlutils、openpyxl、xlsxwriter几种。
如下分别利用xlwt和openpyxl将mysql数据库中查询的数据保存到excel中(注意:xlwt不支持.xlsx文件):
一、从mysql查询数据
import mysql.connector conn=mysql.connector.connect(host='xx.xx.xx.xx',user='root', passwd='password', db='test')
cursor = conn.cursor()
sql = 'select * from table1 limit 5'
cursor.execute(sql)
datas=cursor.fetchall()
conn.commit()
cursor.close()
conn.close()
print(datas)
二、分别利用xlwt和openpyxl将datas数据保存到excel
1、xlwt写入数据示例代码
import xlwt def set_style(name, height, bold = False):
style = xlwt.XFStyle() #初始化样式 font = xlwt.Font() #为样式创建字体
font.name = name
font.bold = bold
font.color_index = 4
font.height = height style.font = font
return style def write_excel(datas,filename):
#创建工作簿
workbook = xlwt.Workbook(encoding='utf-8')
#创建sheet
data_sheet = workbook.add_sheet('demo')
row0 = [u'地市', u'country', '时间', '温度','湿度','雨量','风速']
for i in range(len(row0)):
data_sheet.write(0, i, row0[i], set_style('Times New Roman', 220, True))
nrows=len(datas)
for i in range(nrows):
for j in range(len(row0)):
data_sheet.write(i+1,j,datas[i][j])
# 工作簿保存到磁盘
workbook.save(filename)
2、openpyxl写入数据示例代码
from openpyxl.workbook import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.styles import Font def write_excel_openpyxl1(datas,filename):
# 在内存创建一个工作簿obj
wb = Workbook()
# 将workbook obj写到excel文件
# ew = ExcelWriter(workbook=wb)
ew=wb.active
# 设定第一个sheet页,好像第一个sheet只能这样设定
ws = wb.worksheets[0]
ws.title=u'天气'
# 向第一个sheet页写数据吧
i = 1
for line in datas:
for col in range(1,len(line)+1):
ColNum = get_column_letter(col)
ws.cell('%s%s'%(ColNum,i)).value = line[col-1]
i += 1
# 工作簿保存到磁盘
wb.save(filename) def write_excel_openpyxl(datas,filename):
# 在内存创建一个工作簿obj
result_wb = Workbook()
#第一个sheet是ws
ws1 = result_wb.worksheets[0]
# ws1=wb1.create_sheet('result',0)
#设置ws的名称
ws1.title = "天气"
row0 = [u'地市', u'country', '时间', '温度','湿度','雨量','风速']
ft = Font(name='Arial', size=11, bold=True)
for k in range(len(row0)):
ws1.cell(row=1,column=k+1).value=row0[k]
ws1.cell(row=1,column=k+1).font=ft
for i in range(1,len(datas)+1):
for j in range(1,len(row0)+1):
# col=get_column_letter(j)
# ws1.cell('%s%s'%(col,i)).value='%s' % (data[j-1])
ws1.cell(row=i+1,column=j).value=datas[i-1][j-1]
# 工作簿保存到磁盘
result_wb.save(filename = filename)
三、调用函数
write_excel_openpyxl(datas,'result.xlsx')
write_excel_openpyxl1(datas,'result1.xlsx')
write_excel(datas,'result2.xls')
结果保存到.xlsx和.xls文件中,完成!
利用python将mysql中的数据导入excel的更多相关文章
- python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图
python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...
- python将oracle中的数据导入到mysql中。
一.导入表结构.使用工具:navicate premium 和PowerDesinger 1. 先用navicate premium把oracle中的数据库导出为oracle脚本. 2. 在Power ...
- ASP.NET中数据库数据导入Excel并打印(2)
大家可能觉得上面的代码比较复杂,因为上面对于对打印要求比较高的应用,是十分有效的.如果只是单单对数据进行导出,还可以使用简单的格式,比如使用以下的代码: Private Sub Page_L ...
- 在java中实现数据导入excel表格中
1.首先前端代码如下: 一个导出按钮:<input id="export" class="btn btn-primary" type="butt ...
- python从sqlite中提取数据到excel
import sqlite3 as sqlite from xlwt import * import sys def sqlite_get_col_names(cur, select_sql): cu ...
- Sqoop(三)将关系型数据库中的数据导入到HDFS(包括hive,hbase中)
一.说明: 将关系型数据库中的数据导入到 HDFS(包括 Hive, HBase) 中,如果导入的是 Hive,那么当 Hive 中没有对应表时,则自动创建. 二.操作 1.创建一张跟mysql中的i ...
- [Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!
引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...
- C#Winfrom Listview数据导入Excel
需引用 public void ExportToExecl() { System.Windows.Forms.SaveFileDialog sfd = new SaveFileDialog(); sf ...
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
随机推荐
- PHP获取Mp3文件信息
扫描本地MP3文件,获取文件信息
- java内存模型二
数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之 ...
- 精益IT组织与分享式领导
精益IT组织 未来的组织将专注于同行业的产品或业务流--其他的一切,包括专家和管理者在内,都是为了让一线工作人员可以第一时间就做好,而又不会遇到任何麻烦.最大的制约不是技术:真正的挑战是变 ...
- java 线程方法join的简单总结
虽然关于讨论线程join方法的博客已经很多了,不过个人感觉挺多都讨论得不够全面,所以我觉得有必要对其进行一个全面的总结. 一.作用 Thread类中的join方法的主要作用就是同步,它可以使得线程之间 ...
- Vue中过度动画效果应用
一.实现动画过渡效果的几种方式 实现动画必须要将要进行动画的元素利用<transition>标签进行包裹 1.利用CSS样式实现过渡效果 <transition name=" ...
- 探讨SQL Server并发处理队列数据不阻塞解决方案
前言 之前对于并发这一块确实接触的比较少,自从遇到现在的老大,每写完一块老大都会过目一下然后给出意见,期间确实收获不少,接下来有几篇会来讲解SQL Server中关于并发这一块的内容,有的是总结,有的 ...
- Unity应用架构设计(10)——绕不开的协程和多线程(Part 2)
在上一回合谈到,客户端应用程序的所有操作都在主线程上进行,所以一些比较耗时的操作可以在异步线程上去进行,充分利用CPU的性能来达到程序的最佳性能.对于Unity而言,又提供了另外一种『异步』的概念,就 ...
- R语言-Kindle特价书爬榜示例 & 输出HTML小技巧(转)
自从买了kindle以后,总是想要定期刷有没有便宜的书,amazon经常有些1元/2元的书打特价,但是每次都去刷那些榜单太麻烦了,而且榜单又不能按照价格排名,捞书有点累 所以自己用R语言的rvest包 ...
- 屌丝技能--转Json(Newtonsoft.Json.dll)
妈妈再也不用为我转Json而担忧了!! 很简单,没什么好说明的,嗯! public class ShowTablePage<T> where T : class, new() { publ ...
- xampp教程(一):xampp下载,安装,配置,运行PHP的web项目
本来没有想着弄PHP,但是有同学叫我帮忙启动一下一个PHP写的后台.着实需要去学习一下. 想着安装xampp软件,一个集合了多个服务器,多个数据库,多个后台语言的管理软件. 一.xampp下载 二.安 ...