gpt4 book ai didi

python - 使用 Python 更新表时 Sqlite 出错

转载 作者:太空宇宙 更新时间:2023-11-03 15:03:25 27 4
gpt4 key购买 nike

我正在使用 python 来更新 Sqlite 表中的条目。我使用的命令是:

handle.execute("UPDATE RECORD set NAME=%s DEVICE=%s PROJECT=%s IP=%s COMMENT=%s where ID = %s"%(arg[2],arg[3],arg[4],arg[5],arg[6],arg[1]))

对此我得到一个错误:

sqlite3.OperationalError: near "DEVICE": syntax error

我无法理解 Device 具体出了什么问题。我还检查了变量是否符合预期。数据库有一个名为 device 的列,可以使用此 python 文件打开/访问和编辑数据库。

最佳答案

设置项之间缺少逗号。

除此之外,不使用字符串格式,pass parameters防止SQL注入(inject):

handle.execute(
"""UPDATE RECORD
SET NAME=%s, DEVICE=%s, PROJECT=%s, IP=%s, COMMENT=%s
WHERE ID = %s""",
(arg[2], arg[3], arg[4], arg[5], arg[6], arg[1]))

更新如果您坚持使用字符串格式,则应引用 %s:'%s'

关于python - 使用 Python 更新表时 Sqlite 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44866982/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com