我正在尝试执行以下代码:

QString qryTxt = "INSERT INTO payments_" + getCurrentYear() + " (" + current_month + ") VALUES (" + QString::number(1) + ") WHERE ref_no = " + refNosList[i];
query.prepare(qryTxt);
if (!query.exec())
{
     qDebug() << "Error" << query.lastError().text();
     return false;
}

在调试模式下,这就是我所看到的qryTxt:

"INSERT INTO payments_2015 (January) VALUES (1) WHERE ref_no = 3"

但它仍然返回以下错误:

Error "No query Unable to fetch row"

P.S . :没有说 WHERE ref_no = 3 的部分,查询工作正常 .

extra

  • db中存在ref_no(3)

  • 表和列名称是正确的