使用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