我正在尝试在视频教程的帮助下使用Python将excel数据导入MySQL,但我有以下问题:
只有Excel文件中的第一行入到MySQL中,并得到以下错误
cursor.execute(query, values) line 179 in execute
这是我的代码
import xlrd
import MySQLdb
book=xlrd.open_workbook("C:Python27mygdata.xls")
sheet=book.sheet_by_name("Sheet1")
database=MySQLdb.connect(host="Localhost", user="root", passwd="sharan246", db="test1")
cursor=database.cursor()
query=""" INSERT INTO omrdata (regno,name,subject,barcode,flag1) values (%s,%s,%s,%s,%s)"""
for r in range(1, sheet.nrows):
regno = sheet.cell(r, 0).value
name= sheet.cell(r, 1).value
subject=sheet.cell(r, 2).value
barcode=sheet.cell(r, 3).value
flag1=sheet.cell(r, 4).value
values=(regno,name,subject,barcode,flag1)
cursor.execute(query, values)
cursor.close()
database.commit()
database.close()
print ""
print "All done bye for now"
print ""
columns=str(sheet.ncols)
print"i Just Imported"
您关闭光标cursor.close()
并在 for 循环中database.close()
,但在开始时只打开一次。 尝试将这些行移到 for 循环之外,看看它是否有帮助。