QtSql bindValue - Werte werden nicht übernommen
Verfasst: 16. März 2008 11:29
Hallo ich habe ein Programm, welches ein Login benutzt, jedoch schaffe ich es nicht die Logindaten zu validieren. Das Problem ist, das ich die "Platzhalter" in meinem SQL-Statement nicht ersetzten kann.
qDebug() meldet dann:
Also lastError bekomme ich QSqlError(-1, "", "")
Hat jemand eine idee wie ich den Fehler beheben kann?
Code: Alles auswählen
void CLoginDialog::validateLogin() {
QSqlQuery query;
query.prepare("SELECT COUNT(*) FROM user WHERE username = :username AND password = :password");
query.bindValue(":username", usernameLineEdit->text());
query.bindValue(":password", passwordLineEdit->text());
query.exec();
qDebug() << query.lastQuery();
if (query.size() == 1) {
accept();
} else {
QMessageBox::critical(0, tr("Fehler"), tr("Die Logindaten sind falsch.\n"));
}
}
Ein normaler SELECT * funktioniert, also die DB-Connection funktioniert."SELECT COUNT(*) FROM user WHERE username=:username AND password=:password"
QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
Also lastError bekomme ich QSqlError(-1, "", "")
Hat jemand eine idee wie ich den Fehler beheben kann?