QT开发中文网

//插入群聊信息 QJsonArray grouparray; query.prepare("select * from groupmember where account=:account"); query.bindValue(":account",m_account); query.exec(); while(query.next()){ QSqlQuery query2...

根据你提供的代码,可能导致错误的原因是在第二个查询执行之前,没有调用next()函数来移动到下一条记录。在第一个查询结果集的循环中,你需要在执行完第一个查询后调用next()函数来移动到下一条记录。

修正后的代码如下:

QJsonArray grouparray;
query.prepare("select * from groupmember where account=:account");
query.bindValue(":account", m_account);
query.exec();
while (query.next()) {
    QSqlQuery query2;
    query2.prepare("select * from groupchat where group_account=:group_account");
    query2.bindValue(":group_account", query.value("group_account").toString());
    query2.exec();

    while (query2.next()) {  // 移动到下一条记录
        QJsonObject groupobj;
        groupobj.insert("group_account", query.value("group_account").toString());
        qDebug() << query2.value("group_name").toString();
        groupobj.insert("group_name", query2.value("group_name").toString());
        grouparray.append(groupobj);
    }
}

这样,在第二个查询结果集的循环中,会正确地遍历每条记录,并执行插入操作。

如果问题仍然存在,请确保数据库连接正常、表名和字段名拼写正确,并检查相关数据是否符合预期。如有必要,可以输出更多调试信息以便进一步排查问题。


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

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

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

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

联系我们

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

微信号:3007537140

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

关注我们
x

注册

已经有帐号?