我实际上是一名学生,试图在我的项目中构建登录/注册功能。我在从 mysql 获取与 Python 中指定的基于输入的变量元组匹配的整行时收到错误,并且不确定如何继续。
详细说明:所以我的目的是以用户名和密码的形式获取用户的输入,然后将其与 MySQL 表中预先存在的行进行匹配。但我的代码似乎不起作用。
这是代码:
cursor.execute("SELECT * FROM user WHERE username, password LIKE '%s','%s'"%(username,password))
ecreds = cursor.fetchall()
if len(ecreds) == 1:
print("Login successful. Welcome, ")
谁能告诉我哪里错了?任何建议表示赞赏,谢谢。
谁能告诉我哪里错了?任何建议表示赞赏,谢谢。
这不是比较两列的方式。比较它们中的每一个并与
AND
合并。
cursor.execute("SELECT * FROM user WHERE username = %s AND password = %s", (username,password))
此外,使用准备好的语句而不是字符串格式来替换 SQL 中的变量。请参阅如何在Python中的SQL语句中使用变量?