【发布时间】:2018-06-18 04:58:21
【问题描述】:
我正在尝试使用参数化查询更新 mysql 数据库中的值。但运行以下代码后:
df = pd.read_sql('SELECT * FROM df LIMIT 3', con=db_connection)
print(df.shape)
labels = ('I1','I2','I3')
ids = (123456,123457,123458)
data = (labels,ids)
cursor = db_connection.cursor()
for i in df.id:
cursor.execute("UPDATE df SET label = %s WHERE id= %d",data)
db_connection.commit()
db_connection.close()
我收到此错误: 类型错误:%d 格式:需要一个数字,而不是 str
'id' 的数据类型在数据库中是 int。我只提供数字。不知道为什么会抛出这样的错误......
【问题讨论】:
标签: python mysql parameterized-query