简体   繁体   English

Python GUI登录数据库

[英]Python GUI login Database

I am having issues regarding database in my python login form. 我在python登录表单中遇到有关数据库的问题。 I am unable to fetch data by SQL query I import sqlite3 我无法通过导入sqlite3的SQL查询获取数据

  1. Create table columns and username and password 创建表列以及用户名和密码
  2. Successfully insert the value into the table 成功将值插入表格
  3. When I fetch it gives me a syntax error 当我获取它给我一个语法错误

    d1 = c1.execute("Select username form table where username = variable")

It works when I use username = 'Abhishek' in the above query. 当我在上面的查询中使用username = 'Abhishek'时,它起作用。

try like this: 尝试这样:

#import sqlite3 module
import sqlite3

#Db connection
db = sqlite3.connect('database.db')
cursor = db.cursor()

#Create table
cursor.execute(
            '''
            CREATE TABLE IF NOT EXISTS username (
            id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
            name TEXT NOT NULL,
            age TEXT NOT NULL,
            phone TEXT);
            '''
        )

 #Insert your name
 cursor.execute(
        '''
        INSERT INTO username (name, age, phone)
        VALUES ("Abhishek", "18", "+123456789")
        '''
    )


#Commit previous table creation
db.commit()

#Select all from username table where name column is like 'Abhishek'
myname = 'Abhishek'
sql = f"SELECT * FROM username WHERE name='{myname}'"
#Alternative you can prepare sql like this, attention in quotes('var') aroud myname variable
sql = "SELECT * FROM username WHERE name='{}'".format(myname)
cursor.execute(sql)
#Get all results
result = cursor.fetchall()
for i in result:
    print(i)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM