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数据库!")
python3.8读取表格,并写入mysql
最新推荐文章于 2022-08-10 15:57:20 发布