当前位置:编程学习 > wap >>

使用Qqlquery时出现parameter count mismatch,该如何解决?

设计了一个应对客户端注册请求时写入服务器数据库的函数实现
但是调试时,注册会弹出
parameter count mismatch
registerRequest2
的错误提示

实现代码如下,求问如何解决呢?

qint32 ServerDatabase::registerRequest(const UserInformation &userInf)
{
    qint32 replyKind;
    QSqlQuery query;
    query.prepare("select count(account) from users where account=:account");
    query.bindValue(":account", userInf.account);
    query.exec();
    errorSQLOrder(query, "registerRequest1");
    query.next();
    //判断该用户名是否已经注册
    if(query.value(0).toInt() != 0)
    {
        replyKind = REGISTER_EXIST;
        return replyKind;
    }

    //添加用户
    query.prepare(" insert into users (account,password,name,avatarnumber,status,identity) "
                  " values(:acc, :pwd, :name, :avatar, :status,:identity) ");
    query.bindValue(0, userInf.account);
    query.bindValue(1, userInf.password);
    query.bindValue(2, userInf.name);
    query.bindValue(3, QString::number(userInf.avatarNumber));
    query.bindValue(4, QString::number(userInf.status));
    query.bindValue(5,QString::number(userInf.identity));

    query.exec();
    errorSQLOrder(query, "registerRequest2");
    replyKind = REGISTER_SUCCESS;
    return replyKind;
}
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,