首页 > 解决方案 > PyQt4(python 2.7):QSqlQuery 无法提取值

问题描述

我是 PyQt 编程的新手,我被要求为 Postgres 数据库构建 GUI。我正在尝试使用 QtSql,但是当我尝试在执行查询后返回一个值时,我没有得到我正在寻找的值。

db = QSqlDatabase.addDatabase("QPSQL", "aib")
db.setHostName("my address")
db.setDatabaseName("aib")
db.setUserName("mayonnaise")
db.setPassword("ketchup")
ok = db.open()
if ok:
    print "open"
query = QtSql.QSqlQuery(db)
sql= "SELECT provincia FROM incendi.incendio where incendio.\"codInc\"='19810101230801'"
q=query.exec_(sql)
print query.numRowsAffected()
j=query.first()
if j:
    print "first record"
if query.isValid():
    print "valid"
prov=query.value(0)
print str(prov)

当我尝试运行它时,这是我得到的输出:

open
1
first record
valid
<PyQt4.QtCore.QVariant object at 0x00000000030F5388>

SQL 查询在 pg-admin 中工作正常并返回预期值,那么 python 代码有什么问题吗?

标签: qtpyqtpyqt4qsqlqueryqtsql

解决方案


推荐阅读