以下是代码:
QSqlQuery q1(db_connection), q2(db_connection);
q1.exec("SELECT * from users");
while(q1.next())
{
q2.exec("delete from table1");
if (!q2.isValid())
qDebug() << "q2 is not valid";
if (q1.isActive() && q1.isValid())
qDebug() << q1.record();
}
q1是正确的查询。 q2是知道错误的,因为没有名为“table1”的表。
这笔交易是:为什么q1使用QSqlQuery :: record()方法返回错误的(空)数据,但是在q2之后使用QSqlQuery :: value()方法的绝对正确的数据是exec()'d?