使用python和postgres,execute函数中的变量?

使用python和postgres,execute函数中的变量?,第1张

使用python和postgres,execute函数中的变量

解决了:

我知道我做错了。我需要做的唯一更改是在var_1之后添加一个逗号,因为:“对于位置变量绑定,第二个参数必须始终是一个序列,即使它包含单个变量。并且请记住,Python需要用逗号来创建单个变量。元素元组”。

例如:

def delete(var_1):    cur.execute(    """DELETE FROM potluck     WHERe name = %s;""", (var_1,))

这有效。我从以下位置获得了信息:

http://initd.org/psycopg/docs/usage.html#sql-
injection

在第二种情况下,请参考以下使用AsI的其他答案。这样可行。例如:

def delete(name, var_1):    cur.execute(    """DELETE FROM potluck     WHERe %s = %s;""", (AsIs(name), var_1))

这样就可以了。谢谢!



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5648054.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存