博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过python操控MYSQL添加数据,并将数据添加到EXCEL中
阅读量:5743 次
发布时间:2019-06-18

本文共 2849 字,大约阅读时间需要 9 分钟。

通过python操控MYSQL添加数据,并将数据添加到EXCEL中

第一步 在python中创建mysql数据表import pymysql              #导入模块def getCon():               #联接到数据库,并封装循环使用,db是数据库名字    conn = pymysql.connect(host = '127.0.0.1',user='root',passwd='123456',db='movies')    return conn##创建数据表def createALL():    conn = getCon()    sql ='''create table movierank(                     #这一段为sql语句,创建数据表    moviename varchar(255) not null primary key,    boxoffice float not null,    percent float not null,    days int(11) not null,    totalboxoffice float not null)    '''    cur = conn.cursor()    cur.execute(sql)    conn.commit()# createALL()                  #调用函数,调用完成及时注释掉,避免多次调用报错#修改字段属性def alterALL():    conn = getCon()    sql = "alter table movierank modify percent varchar(255) not null "           #将percent的列属性改成varchar(255)    cur  = conn.cursor()    cur.execute(sql)# alterALL()#插入数据def insertALL(data):    conn = getCon()    sql ="insert into movierank values('%s','%f','%s','%d','%f')"           #占位符使用时注意列类型的区分d:整数s:字符串f:浮点小数    cur =conn.cursor()    cur.execute(sql%data)    conn.commit()data =('21克拉',1031.92,'15.18%',2,2827.09)data2 =('狂暴巨兽',2928.28 ,'43.07%',9    ,57089.2)data3 =('起跑线',161.03   ,'2.37%',18    ,19873.43)data4 = ('头号玩家',   1054.87    ,'15.52%',23,127306.41)data5 =('红海行动',    45.49, '0.67%',65,    364107.74)data6=('犬之岛',  617.35,    '9.08%',2, 1309.09)data7=('湮灭',   135.34 ,'1.99%',9,    5556.77)# insertALL(data)              #调用函数,并导入数据# insertALL(data2)# insertALL(data3)# insertALL(data4)# insertALL(data5)# insertALL(data6)# insertALL(data7)#查看数据def searchALL():    lt =[]               #建立空列表,用于后面插入excel中时使用    conn = getCon()    sql = "select * from movierank"    cur=conn.cursor()    cur.execute(sql)    all = cur.fetchall()   #查看所有数据    for i in all:           #通过遍历查看        lt.append(i)         #将数据放到空列表中    return lt   #下面为实验验证效果的注释        # for i in all:            # print(i)          #此时打印数据,数据格式为元组        #   for j in i:         #在进行一次遍历,将每一个数据都打印出来        #     print(j,end='\t')       #两次遍历是将数据显示出来        # print()searchALL()     #调用涵数第二步为将数据插入到EXCEL中import xlrd         #导入需要的模块import xlwtwbk = xlwt.Workbook()sheet=wbk.add_sheet('movieRank.xlsx')for i in range(len(searchALL())):            #计算列表的长度就是计算有多少行    for j in range(len(searchALL()[0])):     #计算列表中的第一个列表中的数据的长度就是有多少列        sheet.write(i,j,searchALL()[i][j])   #通过索引写入数据wbk.save('moviesrank.xlsx')                   #保存 #查看是否成功wk = xlrd.open_workbook('moviesrank.xlsx')sheet = wk.sheet_by_index(0)nrows = sheet.nrowsncols = sheet.ncols    #查看行值for i in range(nrows):    myrowvalue = sheet.row_values(i)    # print(myrowvalue)    #查看列值for j in range(ncols):    mycolvalue = sheet.col_values(j)    # print(mycolvalue)#查看单元格的值for i in range(nrows):    for j in range(ncols):        mycellvalue = sheet.cell(i,j).value        print(mycellvalue,end='\t')    print()

完成

原文地址

转载地址:http://prizx.baihongyu.com/

你可能感兴趣的文章
F#初学笔记06
查看>>
实战:将企业域名解析委派给企业DNS服务器
查看>>
在Lync 2013环境部署Office Web Apps
查看>>
微软大会Ignite,你准备好了么?
查看>>
读书笔记-高标管事 低调管人
查看>>
Master带给世界的思考:是“失控”还是进化
查看>>
用户和开发者不满苹果iCloud问题多多
查看>>
java.lang.UnsatisfiedLinkError:no dll in java.library.path终极解决之道
查看>>
我的工具:文本转音频文件
查看>>
【许晓笛】从零开始运行EOS系统
查看>>
【跃迁之路】【460天】程序员高效学习方法论探索系列(实验阶段217-2018.05.11)...
查看>>
C++入门读物推荐
查看>>
TiDB 源码阅读系列文章(七)基于规则的优化
查看>>
面试中会遇到的正则题
查看>>
Spring之旅第八站:Spring MVC Spittr舞台的搭建、基本的控制器、请求的输入、表单验证、测试(重点)...
查看>>
数据结构与算法——常用排序算法及其Java实现
查看>>
你所不知的Webpack-多种配置方法
查看>>
React.js 集成 Kotlin Spring Boot 开发 Web 应用实例详解
查看>>
webpack+typescript+threejs+vscode开发
查看>>
python读excel写入mysql小工具
查看>>