我尝试从正在使用的应用的后端执行搜索查询,并且得到以下响应:
回溯(最近通话最近): 搜索中的文件“ 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个。