从python将数据插入MySQL表中的多个列

时间:2014-02-19 11:28:39

标签: python mysql

由于某种原因,我无法将数据插入mysql表中的多个列。一旦我插入第一列(任何列),我发现很难插入其他列。 我注意到插入第一列后,在第二列中,插入从它在第一列中结束的点开始,但在第二列中。我尝试插入第三列,但没有插入。

请参阅下面的代码:

week1=xrange(1,101,1) #for column1
week2=xrange(1,101,1)#for column2

cur.executemany("INSERT INTO stud(classID) VALUES(%s)", [(x,) for x in week1])

db.commit()

提前感谢您的建议。

1 个答案:

答案 0 :(得分:1)

您必须生成包含两列的列表;如果您的两列来自两个不同的迭代,请使用zip()加入它们:

week1 = xrange(1, 101) #for column1
week2 = xrange(1, 101) #for column2

cur.executemany("INSERT INTO stud (classID, othercolumn) VALUES(%s, %s)", zip(week1, week2))
db.commit()

zip(week1, week2)生成一系列元组;每个输入序列取一对值:[(week1[0], week2[0]), (week1[1], week2[1]), ...]