美文网首页
Python3实现从mysql导出数据到excel(一)

Python3实现从mysql导出数据到excel(一)

作者: 谁动了我的果果 | 来源:发表于2017-12-11 15:27 被阅读0次

    cmd

    pip install pyexcel-xlsx

    pip install pyexcel-xlsxw

    Python代码:

    coding=utf-8
    import pymysql.cursors
    from pyexcel_xls import save_data
    from pyexcel_xls import get_data
    from collections import OrderedDict
    conn=pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    passwd='XXXXXXX',
    db='test',
    )
    cur=conn.cursor()
    // 创建数据表
    cur.execute("create table myexcel(id int(11),name varchar(20),password varchar(20))")
    // 通过游标cur 操作execute()方法可以写入纯sql语句。通过execute()方法中写如sql语句来对数据进行操作。
    // 插入一条数据
    cur.execute("insert into myexcel values('1','Lily','1234')")
    // 插入多条数据
    sqli="insert into myexcel values(%s,%s,%s)"
    cur.executemany(sqli,[
    ('2','Jack','4321'),
    ('3','Tom','5678'),
    ('4','Jones','6789'),
    ('5','Seline','4321')
    ])
    // 查询语句
    sql="select id,name,password from myexcel"
    cur.execute(sql)
    result=cur.fetchall()
    b=list(result)
    for c in b:b[b.index(c)]=list(c)
    print(b)
    cur.close()
    conn.commit()
    conn.close()
    // 打开预定义表头文件
    xls_header=get_data('F:\myexcel.xlsx')
    // 获得表头数据
    xh=xls_header.pop("Sheet2")
    xh=xls_header.pop("Sheet3")
    xh=xls_header.get("Sheet1")
    // 拼接整表数据
    xd=OrderedDict()
    xd.update({'Sheet1':xh+b})
    // 保存到另一个文件中
    save_data('F:\myexcelone.xlsx',xd)

    myexcel.xlsx文件:已经预定义好

    myexcel.xlsx

    myexcelone.xlsx文件:

    myexcelone.xlsx

    这种方法有一个弊端就是需要先预定义一个表格,而且导出的数据库没有列字段,还有带二个方法能够实现Python导出MySQL数据到Excel表格,详见Python3操作MySQL数据库(二)这篇文章

    相关文章

      网友评论

          本文标题:Python3实现从mysql导出数据到excel(一)

          本文链接:https://www.haomeiwen.com/subject/rvbiixtx.html