我正在使用带有 SQLite 的 QSqlDatabase 编写 Qt5/c++ 应用程序。我需要将更新查询嵌套在循环中,该循环遍历读取的查询结果集,如此处的伪代码所述:
readQuery.exec();
while(readQuery.next()) {
if (readQuery.value("col1").toString() == "test") {
QSqlQuery updateQuery;
updateQuery.prepare("UPDATE table SET val=:val WHERE key=:key");
updateQuery.bindValue(":val", someval);
updateQuery.bindValue(":key", somekey);
updateQuery.exec();
}
}
两个查询都作用于同一张表。这样做安全吗?更新查询会弄乱我读取查询的结果吗?