尝试使用python对sqlite3
db进行类似查询时遇到以下错误。
错误:
Request Method: POST
Request URL: http://127.0.0.1:8000/search/
Django Version: 1.11.2
Exception Type: ProgrammingError
Exception Value:Incorrect number of bindings supplied. The current statement uses 1, and there are 3 supplied.
我在下面解释我的问题。
rname = request.POST.get('rname')
keyword = '%' + rname + '%'
cursor.execute("SELECT * FROM booking_meeting WHERE room_name LIKE ? ",(keyword))
这里我需要根据关键字从表中获取值。请帮我解决这个错误。
答案 0 :(得分:1)
cursor.execute("SELECT * FROM booking_meeting WHERE room_name LIKE ? ",(keyword))
execute
的第二个参数必须是一个元组,即使只有一个参数:
cursor.execute("SELECT * FROM booking_meeting WHERE room_name LIKE ? ",(keyword,))
# ^
答案 1 :(得分:-1)
尝试:
keyword = '%"' + rname + '"%'
或
keyword = '%\'' + rname + '\'%'
keyword
中的空格可能会导致识别出3个参数。