如何在sqlite中使用占位符执行SELECT * LIKE语句?

我有一个争论tag,我这样说道:

cursor.execute("SELECT * FROM posts WHERE tags LIKE '%?%'", (tag,))

但它似乎不起作用。

我是sqlite的新手,请告诉我如何解决它。谢谢 !

回答:

将通配符应用于参数,而不是SQL:

cursor.execute("SELECT * FROM posts WHERE tags LIKE ?", (f'%{tag}%',))

?SQL参数插值增加了报价给你,所以你的查询结束的'%'value'%',这不是有效的SQL。

以上是 如何在sqlite中使用占位符执行SELECT * LIKE语句? 的全部内容, 来源链接: utcz.com/qa/407598.html

回到顶部