我试图执行以下代码
for counter in range(0, len(weatherData) - 1):
string = 'INSERT INTO weather VALUES(' + str((weatherData[counter])[0:]) +');'
print(string)
cur.execute(string)
所有值和数据都正确打印,一切似乎都没有错误,但是当我检查数据库是空的时。
答案 0 :(得分:1)
插入完成后commit
。
for counter in range(0, len(weatherData) - 1):
....
connection_object.commit()
顺便说一句,您最好自己使用参数传递样式而不是构建查询字符串:
for data in weatherData:
sql = 'INSERT INTO weather VALUES(%s)'
cur.execute(sql, [data])
答案 1 :(得分:0)
循环可以简化如下
for counter, row in weatherData:
string = 'INSERT INTO weather VALUES(' + str(row) + ');'
然后你需要提交
编辑 - 添加了计数器,这是for循环的计数 EDIT2 - 使用行 EDIT3 - 从没有做任何事情的字符串末尾删除[0:]