Seite 1 von 1

QSqlQuery mit SQLite funktioniert nicht

Verfasst: 19. Dezember 2007 23:24
von nils
Hallo. Ich will in einer Tabelle Daten ändern. Habe hierzu folgenden Code:

Code: Alles auswählen

query.exec(QString("UPDATE woche SET name = '%1' WHERE nr = %2").arg(tauschname1).arg(week2));
tauschname1 ist ein QString, week2 ein Integer.

Ich glaube, dass es an der Übergabe der Argumente liegt, finde aber den Fehler nicht. Ohne Argumente funktioniert es einwandfrei :

Code: Alles auswählen

query.exec(QString("UPDATE woche SET name = 'Meier' WHERE nr = 2"));
Der Inhalt der Variablen ist auch genauso wie er sein sollte.
Es passiert aber einfach garnichts.

Weiß jemand Rat?

Verfasst: 20. Dezember 2007 12:21
von upsala
Zum einen gibts ein prepare-Statement, das dir helfen kann. Und zum anderen kann man auch die SQL-Fehlermeldungen abfragen und ausgeben.

Verfasst: 20. Dezember 2007 15:51
von nils
Hallo upsala,

danke für den Tipp. Fehler kamen keine. Nachdem ich mir den letzten Query hab ausgeben lassen ( mit lastQuery() ) habe ich gemerkt, dass diese richtig war. Der Fehler lag in meiner Programmlogik.

Manchmal braucht man nur einen kleinen Denkanstoss :D