QT开发中文网

QSqlQuery query(m_database); query.prepare("UPDATE znq_type SET " " nzznq_status=%1 " " WHERE id=%2 "); query.addBindValue(nzznq_status); query.addBindValue(1);//只有一条记录 if (!query.exec()) { ...

根据你提供的代码和表结构,出现错误”Parameter count mismatch”可能是由于在准备更新语句时,参数绑定的数量不匹配导致的。

可以尝试以下修改:

QSqlQuery query(m_database);
query.prepare("UPDATE znq_type SET nzznq_status = :status WHERE id = :id");
query.bindValue(":status", nzznq_status);
query.bindValue(":id", 1); // 只有一条记录

if (!query.exec()) {
    qDebug() << __LINE__ << "更新记录失败:" << query.lastError().text();
    return false;
}

这样,在prepare方法中使用命名占位符(如:status:id)来标记要绑定的参数,然后使用bindValue方法将实际值与对应的占位符进行绑定。

请注意确保数据库连接(m_database)已正确建立,并根据需要进行相应修改。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=8918

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?