0

コードは次のとおりです。

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がexec()された後、QSqlQuery :: value()メソッドで絶対に正しいデータを返すのはなぜですか?

4

0 に答える 0