我试图像这样增加MySQL数据库中的行
rows = cursor.fetchall()
i = 0
for row in rows:
cursor.execute("UPDATE Table SET order = %s WHERE name = 'JAMES'", (i,))
db.commit()
i += 1
但是在所有项目的最后一个订单是19,rows
的长度是20.我怎么能从0到19之间进行,但是如果我commit()
之后循环这会解决吗?
由于
答案 0 :(得分:2)
也许你的意思是这样的(行的WHERE子句更改):
rows = cursor.fetchall()
for i, row in enumerate(rows):
cursor.execute("UPDATE Table SET order = %s WHERE name = %s", (i, row.name))
db.commit()
否则,order
个字段或一个记录会多次更新。