如何让 SQL Python 查找用户名是否已在数据库中?
How do I make SQL Python find if a username is already in the database?
这是我第一次使用SQL,我很困惑。我想要 python 检查用户名是否已经在数据库中。例如,有人写 'register' 它将获取他们的用户名并检查他们是否已经存在。我有代码,但它绝对不起作用。它只是检查,什么都不做。
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username))
我想让它回馈一些东西。喜欢,至少给出一个错误。这样我就可以使用 'try' 东西了。有没有办法从中获得输出?
提前致谢。
mycursor.execute
本身只准备和执行查询,但它不会 给你结果。
要获得结果,您必须使用光标的提取方法之一,例如 fetchone()
、fetchmany()
或 fetchall()
.
示例:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username,))
rows = mycursor.fetchall()
然后你可以检查rows
之后。
您可以在此处找到有关游标方法的更多信息:
https://www.python.org/dev/peps/pep-0249/
跟进:
注意参数必须是可迭代的,例如元组或列表,即使您只将一个参数传递给游标。
这会失败:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username))
要使其成为元组,请在用户名后添加 ,
:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username,))
或将其设为列表:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", [Username])
这是我第一次使用SQL,我很困惑。我想要 python 检查用户名是否已经在数据库中。例如,有人写 'register' 它将获取他们的用户名并检查他们是否已经存在。我有代码,但它绝对不起作用。它只是检查,什么都不做。
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username))
我想让它回馈一些东西。喜欢,至少给出一个错误。这样我就可以使用 'try' 东西了。有没有办法从中获得输出? 提前致谢。
mycursor.execute
本身只准备和执行查询,但它不会 给你结果。
要获得结果,您必须使用光标的提取方法之一,例如 fetchone()
、fetchmany()
或 fetchall()
.
示例:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username,))
rows = mycursor.fetchall()
然后你可以检查rows
之后。
您可以在此处找到有关游标方法的更多信息:
https://www.python.org/dev/peps/pep-0249/
跟进:
注意参数必须是可迭代的,例如元组或列表,即使您只将一个参数传递给游标。
这会失败:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username))
要使其成为元组,请在用户名后添加 ,
:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", (Username,))
或将其设为列表:
mycursor.execute("""SELECT * FROM TestDatabase WHERE name=%s""", [Username])