gpt4 book ai didi

python - 使用 pyqt 检索 postgres 中的一行中的所有记录

转载 作者:太空宇宙 更新时间:2023-11-03 14:57:23 32 4
gpt4 key购买 nike

我正在编写一个工具来借助 PostgreSQL 和 PyQt4 生成报告。

我向数据库写入一个查询,如下所示:

 sql = "SELECT field1, field2, field3 FROM my_table ORDER BY id ASC"
query = QSqlQuery(self.db) # self.db holds my connection to the database
query.exec_(sql)

这工作正常,我现在可以从查询中获取值,如下所示:

 while query.next():
print query.record().value("field1")

下一步是将结果存储在容器(列表/字典)中并为报告进行计算。然而,就我而言,我有很多需要存储的字段,并且一一调用所有字段似乎是一个很长的弯路。

通过阅读 QSqlqueryQSqlResult没有带来任何光明。我尝试使用 query.result().boundValues() 但只得到空列表作为返回。

我的预期结果是一个包含一行的所有值的列表。

问题:有没有办法使用 PyQt 从查询中检索一行中的所有数据?

最佳答案

select 语句中的列从左到右编号(从零开始),因此您可以执行以下操作:

indexes = range(num_cols)
while query.next():
row = [query.value(index) for index in indexes]

关于python - 使用 pyqt 检索 postgres 中的一行中的所有记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45416444/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com