import xlrd
import MySQLdb
book = xlrd.open_workbook("a.xlsx") #文件名,把文件与py文件放在同一目录下
sheet = book.sheet_by_name("emp") #execl里面的表明
database = MySQLdb.connect(host="127.0.0.1",
user="root",
passwd="root",
db="bwy") #连接数据库
cursor = database.cursor()
database.set_character_set('utf8') #这句不加 会包一个错误 我的python版本是2.7.12
query = """INSERT INTO tp_bind_emp (id,tel,uname,branch) VALUES (%s, %s, %s, %s)""" #插入语句
for r in range(1, sheet.nrows): #第一行是我的标题名,对应表中的字段名所以应该从第二行开始,计算机以0开始计数,所以值是1
id = sheet.cell(r,0).value
tel = sheet.cell(r,1).value
uname = sheet.cell(r,2).value
branch = sheet.cell(r,3).value
values = (id,tel,uname,branch)
cursor.execute(query, values) #执行sql语句
cursor.close() #关闭连接
database.commit()#提交
database.close()#关闭数据
print ""
print "Done! "
print ""
columns = str(sheet.ncols)
rows = str(sheet.nrows)
print '一共插入了 %s'% columns + '列' +'一共插入了 %s' % rows + '行'
ps:python自动化脚本真的很好用,1000条数据不到一秒钟插入完成
安装 xlrd插件:
pip install xlrd