Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python将Excel数据导入MySQL时出错_Python_Mysql_Excel - Fatal编程技术网

使用Python将Excel数据导入MySQL时出错

使用Python将Excel数据导入MySQL时出错,python,mysql,excel,Python,Mysql,Excel,我正在尝试使用Python将excel电子表格中的数据导入MySQL数据库。如果在SQL查询中手动将记录添加到元组列表中,我可以做得很好,但是尝试循环遍历记录时,会出现一个错误,指出元组索引超出范围。不确定问题是什么以及如何解决。任何帮助都将不胜感激。多谢各位 附上代码和错误消息的图片 您好,请提供实际代码,而不是它的图像:l=list(),我想应该是l=[]我已经在原始帖子中更新了代码。将l=list()更改为l=[]并得到相同的结果。您是否尝试打印出l?是否存在突出的异常情况?也许有一个元组

我正在尝试使用Python将excel电子表格中的数据导入MySQL数据库。如果在SQL查询中手动将记录添加到元组列表中,我可以做得很好,但是尝试循环遍历记录时,会出现一个错误,指出元组索引超出范围。不确定问题是什么以及如何解决。任何帮助都将不胜感激。多谢各位

附上代码和错误消息的图片


您好,请提供实际代码,而不是它的图像:
l=list()
,我想应该是
l=[]
我已经在原始帖子中更新了代码。将l=list()更改为l=[]并得到相同的结果。您是否尝试打印出
l
?是否存在突出的异常情况?也许有一个元组没有其他元组那么多元素?@Nicoowr:谢谢你的小花絮。这正是我走上正轨所需要的推动。元组是正确的,我不需要的是SQL查询中的ID参数,因为已经考虑了自动增量。一旦我删除了它和一个%s参数,一切都正常。
import mysql.connector
import xlrd

mydb = mysql.connector.connect(
    host = "localhost",
    user = "root",
    passwd = "*******",
    database = "testdb",
)

mycursor = mydb.cursor()

loc=("E:\\SOX Reports\\2021 Reports\\populateData.xlsx")

l=list()
a=xlrd.open_workbook(loc)
sheet=a.sheet_by_index(0)
sheet.cell_value(0,0)

for i in range (1,418):
    l.append(tuple(sheet.row_values(i)))
addRows = "insert into emplist (ID,SITE, OU, firstName) values(%s,%s,%s,%s)"
mycursor.executemany(addRows,l)
mydb.commit()
mydb.close()