我试图上传一个csv文件到mysql使用python,但我不断得到以下错误 ProgrammingError Traceback (most recent call last) <ipython-input-68-9cec642e378c> in <module>() 8 csv_data = csv.reader(contents) 9 for row in csv_data: ---> 10 cursor.execute('INSERT INTO finally(id,string1,string2,num1,num2,num3,num4,string3,string4,num5) VALUES(?,?,?,?,?,?,?,?,?,?)',row) 11 print (row) 12 mydb.commit()
~/anaconda3/lib/python3.6/site-packages/mysql/connector/cursor.py in execute(self, operation, params, multi) 496 if psub.remaining != 0: 497 raise errors.ProgrammingError( --> 498 "Not all parameters were used in the SQL statement") 499 500 if multi: programmingError: Not all parameters were used in the SQL statement
我不知道还能做什么,因为参数的数量与表中的参数数量匹配,而“?”的数量也相同(参数的数量=10),我不知道如何继续。有人能提供解决方案吗?
2条答案
按热度按时间gg0vcinb1#
添加
print(len(row))
语句来查看每行是否正好包含10个参数。例如,可能有一个空行。zujrkrfu2#
您的csv行似乎超过10个条目。这就是这个错误的含义。