python所有变量更新_PYTHON:使用python变量更新MULTIPLE COLUMNS

我正在尝试编写一个有效的

mysql语句,它允许我使用作为

python变量提供的值更新一个记录中的多个列.

我的陈述如下:

db = MySQLdb.connect(host="localhost", user="user", passwd="password", db="dbname")

cursor = db.cursor()

sql_update = "UPDATE table_name SET field1=%s, field2=%s, field3=%s, field4=%s, field5=%s, field6=%s, field7=%s, field8=%s, field9=%s, field10=%s WHERE id=%s" % (var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, id)

cursor.execute(sql_update)

cursor.close ()

db.commit()

db.close()

在尝试执行查询时,我不断收到SQL语法中存在错误的信息.我找不到它.

有人可以指出我的错误或告诉我应该如何写?

最佳答案 您正在使用字符串格式,而您应该做的是使用参数化查询.像这样做:

cursor.execute("UPDATE table_name SET field1=%s ... field10=%s WHERE id=%s", (var1,... var10, id))

你真的需要发布10个变量吗?格式化令人沮丧,我放弃了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值