为什么我得到这个sqlite3.ProgrammingError错误?

jq6vz3qz  于 7个月前  发布在  SQLite
关注(0)|答案(1)|浏览(142)

错误是:

sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 0, and there are 1 supplied.

字符串
这是导致它的代码:

data = c.execute('''SELECT * FROM job WHERE title LIKE "%?%"''', (user_input,)).fetchall()


为了获得更多的上下文,我尝试使用Python,Flask和SQLite3创建一个功能搜索栏,其中c.execute应该根据用户输入从我的数据库返回数据。但是我在配置SELECT时遇到了问题,所以它也可以处理部分匹配,因此使用了LIKE。我做错了什么?

8xiog9wr

8xiog9wr1#

如果其他人最终对此有问题,请参考this answer.简而言之,这可以使用格式来完成。
在我的情况下,它是:

data = c.execute("SELECT * FROM job WHERE title LIKE '%{}%'".format(user_input)).fetchall()

字符串

相关问题