我是数据库管理新手,我想在两个条件匹配时更新我的 SQLite 数据库,但下面的 Python 代码返回错误:
try:
cursor.execute("UPDATE mytable SET field1 = ?, field2 = ?, field3 = ?, field4 = ? WHERE field5 = ? AND field6 = ?;", var1, var2, var3, var4, var5, var6)
except Exception as e:
Logging.Error("Exception "+str(e))
错误:
异常执行预计最多 2 个参数,得到 7 个
我做错了什么?
谢谢你
execute
函数采用 2 个参数:一个字符串(SQL 语句)和一个值的tuple。你传入的是一个字符串和其他 6 个值。您需要将最后 6 个值放入元组中:
cursor.execute(
"UPDATE mytable SET field1 = ?, field2 = ?, field3 = ?, field4 = ?"
" WHERE field5 = ? AND field6 = ?;",
(var1, var2, var3, var4, var5, var6),
)