import pymysql
import xlrd
# 打开刚才我们写入的 test_w.xls 文件
wb = xlrd.open_workbook("F:\\Python\\projects\\excl\\excl\\test.xlsx")
sheet = wb.sheet_by_name("ops-info") # 通过sheet名获得sheet对象
# 新建一个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 CN2Info_machins(Host,IP,IdracIP,postion,Rack,ST) values('%s', '%s', '%s', '%s', '%s', '%s')"
# 创建一个for循环迭代读取xls文件每行数据的, 从第二行开始是要跳过标题行
for r in range(1, sheet.nrows):
Host = sheet.cell(r, 0).value
IP = sheet.cell(r, 1).value
IdracIP = sheet.cell(r, 2).value
postion = sheet.cell(r, 3).value
Rack = sheet.cell(r, 4).value
ST = sheet.cell(r, 5).value
values = (Host, IP, IdracIP, postion, Rack, ST)
# sql = "insert into CN2Info_machins(Host,IP,IdracIP,postion,Rack,ST) values('%s', '%s', '%s', '%s', '%s',
# '%s')" % ( values[0], values[1], values[2], values[3], values[4], values[5]) 执行sql语句
cur.execute(sql, values)
cur.close()
conn.commit()
conn.close()
columns = str(sheet.ncols)
rows = str(sheet.nrows)
print("导入 " + columns + " 列 " + rows + " 行数据到MySQL数据库!")