有数据库。查询列数未知。需要将所有答案放入 QList
database = QSqlDatabase::addDatabase("QMYSQL");
...
QString sql = "Select * from test";
QSqlQuery query = QSqlQuery(database);
query.exec(sql);
QList<QStringList> retList;
对值使用 .isValid()。
while (query.next()) {
int count = 0;
bool flagValues = true;
QStringList row;
while(flagValues)
{
QVariant value = query.value(count);
if(value.isValid() && !(count == memCount) )
{
count++;
row.append(value.toString());
}
else
{
flagValues = false;
}
}
retList.append(row);
一切都很好,但我在每一行都有一条消息(不是错误)。:
QMYSQLResult::data: column 3 out of range
我不想使用其他查询(如 information_schema)来了解列号。