python-将excel表导入数据库

有些人呢,就是很懒,好比我~不想把excel表里的数据一个一个写入数据库,因此python搞一搞python

1.excel表以下图所示:

在这里插入图片描述

2.在数据库新建一个表,添加如下字段,保存命名为test0615:

在这里插入图片描述

3.将excel表导入数据库,python代码以下:
import xlrd
import pymysql

book = xlrd.open_workbook("student_info.xlsx")#打开须要导入数据库的excel表
sheet=book.sheet_by_name("Sheet1")

#创建一个MySQL链接
conn = pymysql.connect(
        host='localhost',
        user='root',
        passwd='root',
        db='mysql',
        port=3306,
        charset='utf8'
        )
# 得到游标
cur = conn.cursor()
# 建立插入SQL语句
query = 'insert into test0615 (学号,姓名,年龄,性别,班级,分数,排名) values (%s, %s, %s, %s, %s, %s, %s)'
# 建立一个for循环迭代读取xls文件每行数据的, 从第二行开始是要跳过标题行
for r in range(1, sheet.nrows):
      学号 = sheet.cell(r,0).value
      姓名 = sheet.cell(r,1).value
      年龄 = sheet.cell(r, 2).value
      性别 = sheet.cell(r, 3).value
      班级 = sheet.cell(r, 4).value
      分数 = sheet.cell(r, 5).value
      排名 = sheet.cell(r, 6).value
      values = (学号,姓名,年龄,性别,班级,分数,排名)
      # 执行sql语句
      cur.execute(query, values)
cur.close()
conn.commit()
conn.close()
columns = str(sheet.ncols)
rows = str(sheet.nrows)
print ("导入 " +columns + " 列 " + rows + " 行数据到MySQL数据库!")
4.运行结果如图:

在这里插入图片描述
这样就能够把excel表的数据导入数据库了,是否是很nice~mysql