PyQt问题中非常基本的SQL查询

PyQt问题中非常基本的SQL查询,sql,pyqt4,Sql,Pyqt4,我发现的所有示例都是使用PyQt将数据放入各种视图和表中 但我正在尝试进行一些非常基本的查询,以获取数据并将其发送给其他一些非qt函数。你有什么建议吗 例如,如果我从具有3条记录的表“user”中查询此项。如何访问每个记录并将其作为普通python字符串而不是QtString返回 db = QtSql.QSqlDatabase.addDatabase("QSQLITE") db.setDatabaseName(blah) query = QtSql.QSqlQuery(db) query.ex

我发现的所有示例都是使用PyQt将数据放入各种视图和表中

但我正在尝试进行一些非常基本的查询,以获取数据并将其发送给其他一些非qt函数。你有什么建议吗

例如,如果我从具有3条记录的表“user”中查询此项。如何访问每个记录并将其作为普通python字符串而不是QtString返回

db = QtSql.QSqlDatabase.addDatabase("QSQLITE")
db.setDatabaseName(blah)

query = QtSql.QSqlQuery(db)
query.exec_("SELECT id, password FROM user")

您要求访问每个记录并将其作为字符串返回,但我认为您的意思是将每个记录的字段作为字符串返回?每个记录都是一个包含查询字段的对象。在本例中,您向用户请求id和密码

while query.next():
    record = query.record()
    id_ = str(record.value("id").toString())
    password = str(record.value("password").toString())
    print id_, password

当next()返回True时,通过循环遍历查询。在每个循环中,您都可以请求QSqlRecord。使用该记录,您可以询问每个字段的值。每个字段的值都是一个变量。QVariant是一个通用容器,可以容纳不同的类型,因此您必须告诉它以QString的形式为您提供值。通过str(QString)可以轻松地将QString转换为python字符串。因此,您可以将字段值作为python字符串。

您可以始终强制转换字符串:str(myString)