SQLite 从哪里选择变量 x

0 投票
1 回答
1594 浏览
提问于 2025-04-17 16:42

我正在学习SQLite(用Python),遇到了一个问题,让我有点迷茫。

我创建了一个表:

dat.execute("CREATE TABLE IF NOT EXISTS User_Login(Id INTEGER PRIMARY KEY AUTOINCREMENT, 'User_Name' TEXT UNIQUE, 'Password' TEXT, 'Email' TEXT)")
    dat.execute("INSERT INTO User_Login('User_Name', 'Password', 'Email') VALUES('DM', 'pass', 'email@email.com')")

现在我想用一个函数从User_Login表中获取密码(pass),只需要提供Login_Name作为变量。

这里是一些数据:

dat = data.cursor()
dat.execute("SELECT 'Password' FROM 'User_Login' WHERE 'User_Name'=?", [login])
pw = dat.fetchone()
print pw

但是每次获取到的pw都是None,我尝试了很多方法,但就是无法解决这个问题。

我用打印语句检查了登录信息,发现存储是正确的。

有没有人能帮我一下,或者给我指个方向?我会非常感激的。

问候


确实需要进行一些更改,但还是不行 :(

with data:
dat = data.cursor()
dat.execute("DROP TABLE IF EXISTS 'User_Login'")
dat.execute("CREATE TABLE IF NOT EXISTS 'User_Login'(Id INTEGER PRIMARY KEY AUTOINCREMENT, 'User_Name' TEXT UNIQUE, 'Password' TEXT, 'Email' TEXT)")
dat.execute("INSERT INTO User_Login('User_Name', 'Password', 'Email') VALUES('DM', 'Pass', 'email@email.com')")

还有

with data:
    dat = data.cursor()
    dat.execute("SELECT 'Password' FROM 'User_Login' WHERE 'User_Name'=?", [login])
    pw = dat.fetchone()
    print pw

问题依然存在

1 个回答

2

试试这个SQL:

SELECT Password FROM User_Login WHERE User_Name=?

field_name'field_name' 是不一样的。

撰写回答