首页 > 解决方案 > 如何在 sqlite3 python 中返回一个以上的字母查询?

问题描述

我正在制作一个程序,您可以在其中搜索 sqlite3 数据库中是否有内容。

def search():
tk = Tk()
tk.geometry('500x500')
def create():
    gette = entt.get()
    conn = sqlite3.connect('friend.db')
    with conn:
        cursor = conn.cursor()
    cursor.execute('SELECT * FROM Photos WHERE name1=?', gette)
    conn.commit()
    result = cursor.fetchall()
    print(result)

该程序仅在我搜索 1 个字母时才有效。当我尝试其他方法时,它说装订耗材的数量不正确。它还说当前语句使用 1,而我提供了多少个字母。如果有人知道如何解决这个问题,那将不胜感激。

标签: pythontkintersqlite

解决方案


Cursor.execute() 方法需要一个序列作为第二个参数。您提供的字符串恰好是 8 个字符长。

请改用以下表格:

cursor.execute('SELECT * FROM Photos WHERE name1=?', [gette])

推荐阅读