python sqlite3 UPDATE 从变量设置

TMJ*_*TMJ 4 python sqlite sql-update

我进行了下一个查询来更新数据库中的一行。

def saveData(title, LL, LR, RL, RR, distanceBack):
    c.execute("UPDATE settings SET (?,?,?,?,?,?) WHERE name=?",(title, LL, LR, RL, RR, distanceBack, title))
    conn.commit()
Run Code Online (Sandbox Code Playgroud)

我总是收到下一个错误: sqlite3.OperationalError: 近“(”: 语法错误 我知道问号的某些内容不正确。我无法找出确切的解决方案是什么。有人可以解释一下问题是什么吗?

mel*_*lix 8

您可以使用以下 SQL 语法:

UPDATE table_name
SET column1 = value1, column2 = value2...., columnN = valueN
WHERE [condition];
Run Code Online (Sandbox Code Playgroud)

例如,如果您有一个名为“类别”的表,并且想要编辑类别名称,则可以使用:

c.execute("UPDATE CATEGORY SET NAME=? WHERE ID=?", (name,category_id))
Run Code Online (Sandbox Code Playgroud)

在哪里:

Category 是一个仅包含两项的表:(ID, NAME) 和 ID PRIMARY KEY。