Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. [SOLVED]Parameter count mismatch
Forum Update on Monday, May 27th 2025

[SOLVED]Parameter count mismatch

Scheduled Pinned Locked Moved General and Desktop
3 Posts 2 Posters 8.0k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Offline
    N Offline
    Neutron Stein
    wrote on last edited by
    #1

    Hi. I've got this error message("Parameter count mismatch") at runtime. Here is my code.
    @
    void SqlHandler::signup(const QString & name, const QString & pass, const QChar & sexe){
    QSqlQuery query(db);
    if(!query.exec(QString("SELECT id_user FROM User WHERE pseudo LIKE "%1" AND pass LIKE "%2"").arg(name).arg(pass)))
    qDebug() << query.lastError();
    else{
    if(query.size() > 0){
    emit doublon();
    }else{
    query.prepare("INSERT INTO User VALUES (?,?,?,?,?)");
    query.bindValue(0,name);
    query.bindValue(1,pass);
    query.bindValue(2,sexe);
    query.bindValue(3,0);
    query.bindValue(4,QString());
    if(!query.exec())
    qDebug() << query.lastError().text() ;//BOOM here
    else
    emit signupSuccess();
    }
    }
    }
    @

    Here is the User table scheme:
    User ( id_user serial(11) NOT NULL,pseudo varchar(20) NOT NULL, pass varchar(20) NOT NULL, ip varchar(15) NOT NULL, status tinyint(1) NOT NULL, group int(11) DEFAULT NULL, PRIMARY KEY (id_user));
    I'm using QSQLITE.
    Thanks

    Never Seen !

    1 Reply Last reply
    0
    • JeroentjehomeJ Offline
      JeroentjehomeJ Offline
      Jeroentjehome
      wrote on last edited by
      #2

      You have to check the lastError isValid bit first:
      @if
      (query.lastError().isValid())
      qDebug() << query.lastError();
      @
      If no error occurred it fails.
      greetz

      Greetz, Jeroen

      1 Reply Last reply
      0
      • N Offline
        N Offline
        Neutron Stein
        wrote on last edited by
        #3

        It didn t work. But i've solved the problem. The sql for creating the User table should be
        @
        CREATE TABLE User ( id_user INTEGER NOT NULL,pseudo varchar(20) NOT NULL, pass varchar(20) NOT NULL, sexe char(1) NOT NULL,ip varchar(15) NOT NULL, status tinyint(1) NOT NULL, group int(11) DEFAULT NULL, PRIMARY KEY (id_user));
        @
        Thx

        Never Seen !

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved