pythom中的sqlite3数据库查询

时间:2018-10-08 12:47:01

标签: python sqlite database-connection

我尝试从正在使用的应用的后端执行搜索查询,并且得到以下响应:

回溯(最近通话最近):   搜索中的文件“ backend.py”,第30行     cur.execute(“ SELECT * FROM PlanInfo WHERE Location =?”,self.NmRqst.text) ValueError:参数的类型不受支持

我有以下代码:

def connectfile(self):
    conn = sqlite3.connect("TestTrace.db")
    cur = conn.cursor()
    cur.execute(
        "CREATE TABLE IF NOT EXISTS PlanInfo (Plan Number TEXT, Tracing Number TEXT, Submitted By TEXT, "
        "Location TEXT)")
    conn.commit()
    conn.close()

def search(self):
    conn = sqlite3.connect("TestTrace.db")
    cur = conn.cursor()
    cur.execute("SELECT * FROM PlanInfo WHERE Location=?", self.NmRqst.text)
    rows = cur.fetchall()
    conn.close()
    return rows

self.NmRqst.text 是QLineEdit,它接受用户输入以进行数据库查询...

在您认为合适的时候随时纠正问题!

我已经编辑了代码行,

def connectfile(self):
    conn = sqlite3.connect("TestTrace.db")
    cur = conn.cursor()
    cur.execute(
        "CREATE TABLE IF NOT EXISTS PlanInfo (Plan_Number TEXT, Tracing_Number TEXT, Submitted_by TEXT, "
        "Location TEXT)")
    conn.commit()
    conn.close()

def search(self):
    conn = sqlite3.connect("TestTrace.db")
    cur = conn.cursor()
    cur.execute("SELECT * FROM PlanInfo WHERE Location=?", str(self.NmRqst.text,))
    rows = cur.fetchall()
    conn.close()
    return rows

...我收到以下错误:

回溯(最近通话最近):   搜索中的文件“ backend.py”,第30行     cur.execute(“ SELECT * FROM PlanInfo WHERE Location =?”,str(self.NmRqst.text,)) sqlite3.ProgrammingError:提供的绑定数量不正确。当前语句使用1,并且提供了64个。

0 个答案:

没有答案