Alles rund um die Programmierung mit Qt
BigBiber89
Beiträge: 10 Registriert: 19. Oktober 2010 18:59
Beitrag
von BigBiber89 » 22. November 2010 23:10
Hier ist mein Code:
database = QSqlDatabase::addDatabase("QODBC");
database.setDatabaseName("D:\\myaccounts.dsn");
database.setUserName("...");
database.setPassword("...");
bool ok = database.open();
if(ok){
qDebug() << database.exec("SELECT * FROM accounts").boundValues().values();
QSqlQuery query(database);
query.exec("SELECT vorname FROM accounts");
qDebug() << query.record().value(1);
qDebug() << query.lastError();
}
Das Problem ist es werden keine Daten durch die Select Befehle geliefert es sind definitiv Daten in der Tabelle und einfügen mit INSERT INTO ist auch ohne probleme möglich nur mit SELECT geht es nicht ich kriege immer leere Werte zurück woran könnte das liegen?
Danke im Vorraus
Zuletzt geändert von
BigBiber89 am 23. November 2010 19:34, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 23. November 2010 06:32
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
MichaelS
Beiträge: 240 Registriert: 27. Dezember 2005 12:49
Beitrag
von MichaelS » 23. November 2010 17:01
BigBiber89 hat geschrieben: Hier ist mein Code:
QSqlQuery query(database);
query.exec("SELECT vorname FROM accounts");
qDebug() << query.record().value(1);
qDebug() << query.lastError();
1. Solltest Du Deine Abfrage auf eine gültige Position setzen (next(), first()).
2. Fragst Du in Deinem SQL-Statement ein Feld ab, übergibst der Methode value() aber den Index 1 (also das zweite - nicht vorhandene - Feld).
Gruß Michael
BigBiber89
Beiträge: 10 Registriert: 19. Oktober 2010 18:59
Beitrag
von BigBiber89 » 23. November 2010 19:33
Danke ist nun gelöst und habe meinen Fehler erkannt