python执行sql查询脚本并填写到excel,用Python将Excel数据导入到SQL Server的例子

使用环境:Win10 x64 Python:3.6.4 SqlServer:2008R2

因为近期需要将excel导入到SQL Server,但是使用的是其他语言,闲来无事就尝试着用python进行导入,速度还是挺快的,1w多条数据,也只用了1s多,代码也比较简单,就不多解释了。

用到的库有xlrd(用来处理excel),pymssql(用来连接使用sql server)

import xlrd

import pymssql

import datetime

# 连接本地sql server 地址 用户名 密码 数据库

conn = pymssql.connect("127.0.0.1:1433", "sa", "888888", "Test")

# 建立cursor

cursor = 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 " % sql3

cursor.execute(sql1)

# commit提交变更

conn.commit()

# 结束时间

end_time = datetime.datetime.now()

speed = end_time - start_time

# 打印花费时间

print(speed)

以上这篇用Python将Excel数据导入到SQL Server的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。 ad51e517755f8fd6a7ec83ced4ecfaf3.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值