sqlite 提供的绑定数错误

bis0qfac  于 2023-02-16  发布在  SQLite
关注(0)|答案(1)|浏览(134)
def login():
    loggedIn = False
    userInput = input("please enter your username: ")
    pwdInput = input("please enter your password: ")
    searchUser = hashlib.md5(userInput.encode()).hexdigest()
    searchPwd = hashlib.md5(pwdInput.encode()).hexdigest()
    query = """SELECT * FROM Users
    WHERE Username =?;"""
    cursor.execute(query, searchUser)
    record = cursor.fetchone()
    if record:
       print("found")

对不起,缩进是坏的,但不是在实际的东西
我有这个代码设置为接受输入,然后散列他们,我想搜索表“用户”找到“用户名”。但它一直说“提供的绑定数不正确。当前语句使用1,而提供了32。
我尝试将查询和变量合并到一行中,但仍然不起作用

yhqotfr8

yhqotfr81#

您需要提供查询参数的元组(或其他序列),即使只有一个:

cursor.execute(query, (searchUser,))

通过单独传递searchUser而不 Package 它,您将告诉游标将searchUser的各个字符视为单独的查询参数。

相关问题