博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python将Excel文件内容导入Mysql数据
阅读量:5214 次
发布时间:2019-06-14

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

为了方便起见,将所有字段类型设置为str,理解mysql的语法这个玩意贼简单 # _*_ coding:utf-8 _*_ import pandas as pd  #先装个pandas ,pip install pandas import pymysql #读入数据库 filename='F:\pycharm\sales.xls'   #本地需要导入数据库的文件 data=pd.read_excel(filename) #建立数据库连接 db=pymysql.connect('10.1.9.176','root','123456','python_excel') cursor=db.cursor() #判断数据表是否存在 try:     cursor.execute('create table sales( ORGCODE varchar(20),ORGNAME varchar(100),SHIPPINGTOTAL varchar(100),BOXTOTAL varchar(100),YHTOTAL varchar(100),YSTOTAL varchar(100),PAYTOTAL varchar(100),PLATFORMSERVICETOTAL varchar(100),PLATFORMYHTOTAL  varchar(100),MERCHANTYHTOTAL  varchar(100),PLUTOTAL  varchar(100), MINDELIVERYAMOUNT varchar(100),SSTOTAL varchar(100),ORDERDATE varchar(100),FINISHDATE varchar(100), ORDERNO varchar(100), PLATFORM varchar(100),STATUS varchar(100))') except:         print('已存在的表') query = 'insert into sales(ORGCODE,ORGNAME,SHIPPINGTOTAL ,BOXTOTAL ,YHTOTAL ,YSTOTAL ,PAYTOTAL ,PLATFORMSERVICETOTAL ,PLATFORMYHTOTAL  ,MERCHANTYHTOTAL  ,PLUTOTAL  , MINDELIVERYAMOUNT,SSTOTAL,ORDERDATE ,FINISHDATE , ORDERNO , PLATFORM ,STATUS) values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)' for i in range(0,len(data)):     ORGCODE=data.iloc[i,0]#不清楚iloc可以百度下iloc的用法     ORGNAME=data.iloc[i,1]     SHIPPINGTOTAL=data.iloc[i,2]     BOXTOTAL=data.iloc[i,3]     YHTOTAL=data.iloc[i,4]     YSTOTAL=data.iloc[i,5]     PAYTOTAL=data.iloc[i,6]     PLATFORMSERVICETOTAL=data.iloc[i,7]     PLATFORMYHTOTAL=data.iloc[i,8]     MERCHANTYHTOTAL=data.iloc[i,9]     PLUTOTAL=data.iloc[i,10]     MINDELIVERYAMOUNT=data.iloc[i,11]     SSTOTAL=data.iloc[i,12]     ORDERDATE=data.iloc[i,13]     FINISHDATE=data.iloc[i,14]     ORDERNO=data.iloc[i,15]     PLATFORM=data.iloc[i,16]     STATUS=data.iloc[i,17]     values = (str(ORGCODE),str(ORGNAME),str(SHIPPINGTOTAL),str(BOXTOTAL),str(YHTOTAL) ,str(YSTOTAL) ,str(PAYTOTAL) ,str(PLATFORMSERVICETOTAL) ,str(PLATFORMYHTOTAL) ,str(MERCHANTYHTOTAL) ,str(PLUTOTAL) ,str(MINDELIVERYAMOUNT),str(SSTOTAL),str(ORDERDATE) ,str(FINISHDATE) ,str(ORDERNO) , str(PLATFORM) ,str(STATUS))     cursor.execute(query,values) cursor.close() db.commit() print("数据导入成功") db.close() 如图提示数据导入成功

 

 

 查询数据(截图不全)

 

 

用Navicat会有乱码,不知道什么原因,以后在慢慢研究吧

 

 

 搞完以后发现贼鸡儿简单啊

 

转载于:https://www.cnblogs.com/python2687806834/p/11535372.html

你可能感兴趣的文章
Appium+python自动化-Android夜神模拟器
查看>>
异常处理:try - except 和 try finally。
查看>>
创建自己的github仓库
查看>>
建造者模式(Builder Pattern)
查看>>
Oracle PL/SQL编程语法
查看>>
pdf文件如何转换成cad格式文件
查看>>
单点登录实现机制:桌面sso
查看>>
团队开发需求分析简介
查看>>
bzoj3931: [CQOI2015]网络吞吐量
查看>>
Ok6410裸机驱动学习(二)ARM基础知识
查看>>
git删除本地保存的账号和密码
查看>>
scrapy之Selectors
查看>>
另一个 OleDbParameterCollection 中已包含 OleDbParameter 错误分析及解决办法
查看>>
SQL Server技术问题之索引优缺点
查看>>
LBS上传到百度地图
查看>>
linux结束一个运行超10分钟的进程
查看>>
leetcode Count and Say python
查看>>
微信小程序--每个独立的page的page.json只能修改window属性
查看>>
回顾装饰模式
查看>>
Sring容器技术内幕之InstantiationStrategy类介绍
查看>>