我需要能够使用Qt的QSqlQuery类恢复由UPDATE查询更新的行的ID。
我不知道它是否可能,但有一个类似的机制可以恢复QSqlQuery插入的最后一行的id:http://doc.qt.io/qt-5/qsqlquery.html#lastInsertId
如果有人能给我一个方法来做到这一点或确保我不可能,那就太好了。
答案 0 :(得分:2)
使用PostgreSQL(不适用于SqlServer):
QSqlQuery query("UPDATE myTable SET value=1 WHERE value=0 RETURNING id");
while (query.next()) {
int id = query.value(0).toInt();
qDebug() << id;
}