繁体   English   中英

SQL 更新查询中的 Python 变量

[英]Python variables in SQL Update query

我对 Python 非常陌生,我正面临 Python-SQLite 连接的问题。

con=connection()
cur=con.cursor()
cur.execute("""UPDATE table1 SET column1=%s WHERE column2=%d""",(var1,var2))
if(cur.rowcount > 1):
    cur.commit()
else:
    return["Error"]

其中var1存储字符串, var2存储整数。

错误如下:

SQLError('SQLError: near "%": 语法错误',)

我在这里阅读了大量关于如何使用变量编写查询的教程和线程,但我陷入了死胡同。

根据您要使用的sqlite文档 为您的变量。 例子:

cur.execute("""update table1 set column1=? where column2=?""", (var1, var2))

这对我有用

mycursor.execute("UPDATE table SET column WHERE name = '%s' AND age = %s" % ("Alex", 30) 

传入字符串时。

使用引号

并在执行语句的末尾,使用

%

请记住,如果您要传递多个变量,则必须将它们放在一个元组中

我花了很长时间才明白在编写 UPDATE 查询时必须在末尾使用 %

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM