时间:2021-05-22
使用环境:Win10 x64 Python:3.6.4 SqlServer:2008R2
因为近期需要将excel导入到SQL Server,但是使用的是其他语言,闲来无事就尝试着用python进行导入,速度还是挺快的,1w多条数据,也只用了1s多,代码也比较简单,就不多解释了。
用到的库有xlrd(用来处理excel),pymssql(用来连接使用sql server)
import xlrdimport pymssqlimport datetime# 连接本地sql server 地址 用户名 密码 数据库conn = pymssql.connect("127.0.0.1:1433", "sa", "888888", "Test")# 建立cursorcursor = conn.cursor()# excel文件fname = "XXXX.xls"#打开文件bk = xlrd.open_workbook(fname)#打开工作表sh = bk.sheets()[0]#获取行数start_time=datetime.datetime.now()sql3=''# 遍历所有行for i in range(1,sh.nrows): a = [] sql = '(' # 遍历所有列 for j in range(sh.ncols): # 将excel每一列的值用,隔开 sql += "'" + str(sh.cell(i, j).value) + "'" + ',' # 组合成sql语句(value1,value2,value3,,) sql2 = sql.strip(",") sql3 += sql2.strip()+'),' # 1000行执行一次sql if i%1000==0: sql3 = sql3.rstrip(",") sql1 = "insert into Flow(ID, SaleDate,danwei,danweiname,huowuid,huowuname,chandi,guge,num,danjia,back,pihao,youxiaodate,jibendanwei,Userid,UserdanweiName,kehuquyu,kehuleixing,type) values %s " % sql3 # 执行sql语句 cursor.execute(sql1) sql = "" sql3=""sql3 = sql3.rstrip(",")sql1 = "insert into Flow(ID, SaleDate,danwei,danweiname,huowuid,huowuname,chandi,guge,num,danjia,back,pihao,youxiaodate,jibendanwei,Userid,UserdanweiName,kehuquyu,kehuleixing,type) values %s " % sql3cursor.execute(sql1)# commit提交变更conn.commit()# 结束时间end_time = datetime.datetime.now()speed = end_time - start_time# 打印花费时间print(speed)以上这篇用Python将Excel数据导入到SQL Server的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
excel_class是一款php导入excel的工具,它可以方便从excel导入数据到php,也可以方便用php把数据导入到excel。在使用它的时候出现了中
前几天,有个将Excel中的数据导入到数据库中的需求,原本想到用程序读取Excel中的数据并存储到数据库中,但经一哥们的提醒,说用EditPlus或UltraE
1、使用xlrd模块读取数据#将excel表格内容导入到tables列表中defimport_excel(tab):#创建一个空列表,存储Excel的数据tab
让浏览器允许远行excel,将网页中的表格导入到Excel。解决有时网页中有打印选项,但文件却无法导入到Excel里面的问题,即可能出现下面显示问题。1、首先找
用python写了个数据迁移脚本,主要是利用从库将大的静态表导出表空间,载导入到目标实例中。#!/usr/bin/envpython3#-*-coding:ut