我在传递像
这样的变量时遇到了问题query7 = QSqlQuery ("SELECT Exemplo FROM TabelaSubst WHERE Palavra="+text+" ORDER BY Exemple ASC;")
我得到任何传递我的变量文本的东西。 如果我打印query7.next()我得到假..
我的程序是PYQT,我有一个组合框,当我从中选择一些文本时,我将此文本传递给我的变量“text”,我想在我的 Where Palavra = text ,但我不知道怎么做。我这样做是因为有了它我会得到这些文本的例子,我把它放在一个qtablewidget ..
当我使用单词进行搜索时,例如
query7 = QSqlQuery ("SELECT Exemplo FROM TabelaSubst WHERE Palavra='ronaldo' ORDER BY Exemple ASC;")
..好吧..我拿着我的桌子上的例子...... 但如果我为我的变量文字更改“ronaldo”,我会得到任何东西..
我创建表来放置示例的方式是:
index1 = 0
while (query7.next()):
self.tableWidget.setItem(index1,0,QTableWidgetItem(query7.value(0).toString()))
index1 = index1+1
答案 0 :(得分:1)
将text
括在引号中,或将引号放入查询字符串中。例如:
text = "'%s'" % text
或
query7 = QSqlQuery ("SELECT Exemplo FROM TabelaSubst WHERE Palavra='"+text+"' ORDER BY Exemple ASC;")