kandalf
28th November 2006, 14:36
Hi guys, I'm having a problem with bindValue method. I have:
void SqliteHelper::insertData(const int &recordid, const int &controlid, const QString &value, const int &dataid)
{
QSqlQuery sqlQuery(this->sqlDb);
sqlQuery.prepare("INSERT INTO data (recordid, controlid, value, dataid) VALUES (:recordid,:controlid,:value,:dataid)");
sqlQuery.bindValue(":recordid", recordid);
sqlQuery.bindValue(":controlid", controlid);
sqlQuery.bindValue(":value", value);
sqlQuery.bindValue(":dataid", dataid);
if (sqlQuery.exec())
{
emit successExecute(sqlQuery.lastQuery());
}
else
{
emit errorExecute(sqlQuery.lastQuery(), sqlQuery.lastError().driverText());
}
}
The problem is that when query is executed lastError().driverText() returns "parameter count mismatch" I don't know what this error means.
Any ideas?
Thanx in advance.
void SqliteHelper::insertData(const int &recordid, const int &controlid, const QString &value, const int &dataid)
{
QSqlQuery sqlQuery(this->sqlDb);
sqlQuery.prepare("INSERT INTO data (recordid, controlid, value, dataid) VALUES (:recordid,:controlid,:value,:dataid)");
sqlQuery.bindValue(":recordid", recordid);
sqlQuery.bindValue(":controlid", controlid);
sqlQuery.bindValue(":value", value);
sqlQuery.bindValue(":dataid", dataid);
if (sqlQuery.exec())
{
emit successExecute(sqlQuery.lastQuery());
}
else
{
emit errorExecute(sqlQuery.lastQuery(), sqlQuery.lastError().driverText());
}
}
The problem is that when query is executed lastError().driverText() returns "parameter count mismatch" I don't know what this error means.
Any ideas?
Thanx in advance.