python3.8读取表格,并写入mysql

import pymysql
import xlrd

wb = xlrd.open_workbook("F:\\Python\\projects\\excl\\excl1\\Server.xlsx")  # 打开刚才我们写入的 test_w.xls 文件
sh1 = wb.sheet_names()
sheet = wb.sheet_by_name(sh1[0])  # 通过sheet名获得sheet1对象,sh1获取表格所有sheet名,sh1[0]=sheet1
# 新建一个mysql数据库连接
conn = pymysql.connect(host='172.16.6.85',  # 数据库服务器IP
                       port=3306,  # 数据库服务器端口
                       user='root',  # 数据库用户名
                       passwd='Aa@123456',  # 数据库密码
                       db='HW')  # 数据库库名称
# 使用cursor()方法创建一个游标对象cur (可以理解为激活数据库)
cur = conn.cursor()
sql = 'insert into Server(ID,GPS,ServerLX,ServerName,' \
      'Ptime,IP1,IP2,ServerAdministrator,' \
      'ServerPassword,virus,library,Database1,' \
      'ServerRole,System1,CPU,Memory,Disk,Department,' \
      'Leader,Email,Host) ' \
      'values(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) '
# 创建一个for循环迭代读取xls文件每行数据的, 从第二行开始是要跳过标题行
for r in range(1, sheet.nrows):
    ID = sheet.cell(r, 0).value
    GPS = sheet.cell(r, 1).value
    ServerLX = sheet.cell(r, 2).value
    ServerName = sheet.cell(r, 3).value
    Ptime = sheet.cell(r, 4).value
    IP1 = sheet.cell(r, 5).value
    IP2 = sheet.cell(r, 6).value
    ServerAdministrator = sheet.cell(r, 7).value
    ServerPassword = sheet.cell(r, 8).value
    virus = sheet.cell(r, 9).value
    library = sheet.cell(r, 10).value
    Database1 = sheet.cell(r, 11).value
    ServerRole = sheet.cell(r, 12).value
    System1 = sheet.cell(r, 13).value
    CPU = sheet.cell(r, 14).value
    Memory = sheet.cell(r, 15).value
    Disk = sheet.cell(r, 16).value
    Department = sheet.cell(r, 17).value
    Leader = sheet.cell(r, 18).value
    Email = sheet.cell(r, 19).value
    Host = sheet.cell(r, 20).value
    values = (ID, GPS, ServerLX, ServerName, Ptime, IP1, IP2, ServerAdministrator, ServerPassword, virus,
              library, Database1, ServerRole, System1, CPU, Memory, Disk, Department, Leader, Email, Host)
    cur.execute(sql, values)
cur.close()
conn.commit()
conn.close()
columns = str(sheet.ncols)
rows = str(sheet.nrows)
print("导入 " + columns + " 列 " + rows + " 行数据到MySQL数据库!")


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值