繁体   English   中英

Python 和 Sqlite3 返回多于一行

[英]Python and Sqlite3 return more than one line

我正在尝试使用 python 在 sqlite 中进行查询,但是当我在我的数据库中进行研究时,它只是返回最后一个输入。 像这样

def Busca(self):
        conn = sqlite3.connect('teste.db')
        cursor = conn.cursor()

        valorAtual = str(self.comboBox.currentText())
        if valorAtual == "CNPJ":
            sqlqry = 'SELECT * FROM OrdemServico WHERE CNPJ =' + self.lineEdit_9.text()
            c = cursor.execute(sqlqry)
            retorno = str(c.fetchone())
            retorno = retorno.replace("'","")
            self.textEdit.setText(retorno)

所以sqlite浏览器中的这个查询返回三个值,但在python中它只返回一个。

有人知道为什么吗?

我建议您仔细阅读文档以了解您要执行的操作:

https://docs.python.org/3/library/sqlite3.html#sqlite3.Cursor.fetchone

此外,这是一篇关于您尝试使用“fetchone”进行的操作的博客文章。 您几乎没有正确处理您的结果集。

这不是使用您正在使用的确切模块,但想法是相同的。

http://kushaldas.in/posts/fetching-row-by-row-from-mysql-in-python.html

暂无
暂无

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

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