如何使用python从sqlite数据库中搜索和检索单个数据段?
我目前正在制作这个程序,作为我计算机课程的一部分。在我的程序中,我创建了一个保存用户信息的数据库如何使用python从sqlite数据库中搜索和检索单个数据段?,python,mysql,database,sqlite,Python,Mysql,Database,Sqlite,我目前正在制作这个程序,作为我计算机课程的一部分。在我的程序中,我创建了一个保存用户信息的数据库'Records.db'。该表称为用户,布局为Id整数主键、用户名字符串、密码字符串、名字字符串、姓氏字符串。 我正在尝试为用户编写登录代码。目前我的代码如下: Login for users import sys import sqlite3 as lite con = lite.connect('Records.db') Login = False while Login is Fa
'Records.db'
。该表称为用户,布局为Id整数主键、用户名字符串、密码字符串、名字字符串、姓氏字符串
。
我正在尝试为用户编写登录代码。目前我的代码如下:
Login for users
import sys
import sqlite3 as lite
con = lite.connect('Records.db')
Login = False
while Login is False:
u_name = input("Enter your username: ")
p_word = input("Enter your password: ")
with con:
cur = con.cursor()
cur.execute("SELECT Password AND First_Name AND Surname FROM Users WHERE Username='"+u_name+"'")
if Password == p_word:
print("Welcome",First_Name,Surname+"!")
Login = True
else:
print("The Username/Password is incorrect. Please check your input and try again!")
我一直收到一个错误,说变量密码没有定义。但是我不知道如何使用sqlite检索它。我想,
cur.execute(“从用户名=“+u\u Name+””的用户中选择密码、名字和姓氏”)
将返回要打印/使用的密码等请尽快帮助这里至少有三件事不对。我不会给你答案,因为这是家庭作业,但希望这会有帮助
首先,您的SQL语法不正确。您不需要这样做:您用逗号分隔列
其次,execute
实际上并不获取结果。为此,您需要执行cur.fetchone()
第三,你没有理解变量是如何工作的。即使得到结果,它也不会自动分配给名为Password的局部变量。您需要获取游标返回的数据并将其分配给该变量