有一种快速的方法可以将查询记录作为QMap<QString,QVariant>
或类似的类型吗?
或者你可以告诉我如何访问当前记录中的列列表?
感谢。
答案 0 :(得分:1)
我认为没有这样的方法。但是你可以构造包含所有列的QMap对象:
QString sql = "SELECT * FROM xxx WHERE id = x";
query.exec(sql);
QSqlRecord record = query.record();
query.next();
QMap<QString,QVariant> params;
for (int i=0; i<record.count(); ++i) {
params.insert(record.fieldName(i++), query.value(i));
}
正如您所见,QSqlRecord提供了对列等信息的访问。