[gelöst] c++ + mysql update syntax wie?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Daemlock
Beiträge: 45
Registriert: 04.01.2004 21:08:45

[gelöst] c++ + mysql update syntax wie?

Beitrag von Daemlock » 12.12.2007 21:52:55

hallo erstmal,

und gleich zu meimen Problem.
Ich möchte gerne meine Datenbank über ein c++ updaten lassen aber es funktionirt nicht :( keine Fehlermeldung oder so, es wird einfach ignoriert.
Google und suche hier hat leider nichts gebracht.

den code, den ich habe (und nicht funktionirt):

Code: Alles auswählen

 query.reset();
query << "UPDATE Flotte SET Auftrag=" << befehl->getauftrag()<< ";";
result = query.store();
//      query.execute();
und noch was komisches:

Code: Alles auswählen

 for (mysqlpp::Row::size_type i = 0; row = result.at(i); ++i){
x = row[MY_Flotte_x];
y = row[MY_Flotte_y];
z = row[MY_Flotte_z];
fleet_composition = row[MY_Flotte_Schiffe];
useable_fuel = row[MY_Flotte_Wasserstoff];
std::cout <<  row[MY_Flotte_Schiffe];   //hilft das bei fehlern?
                }
Ich muss cout verwenden sonst steht in fleet_composition irgend was, was nicht dahin gehört.
Vielleicht hat ja jemand von euch eine erklärung.

benützer header:
<mysql++/mysql++.h>
Zuletzt geändert von Daemlock am 13.12.2007 16:28:41, insgesamt 1-mal geändert.

Benutzeravatar
The Torso
Beiträge: 882
Registriert: 13.07.2003 12:46:40
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von The Torso » 13.12.2007 00:27:49

warum benutzt du fuers update nicht die update funktion? Ein Beispiel wie das geht findest du hier [1].
Fraegst du auch die Exceptions ab? Ich hab die erfahrung gemacht, dass es bei mir zwar funktioniert, aber trotzdem eine Exception geworfen wird - warum weiss ich bis heut noch nicht?!?

Vielleicht zeigst ein bisschen mehr Code.

mfg

[1] http://tangentsoft.net/mysql++/doc/html ... orial.html
Debian GNU/Linux 00101010

Daemlock
Beiträge: 45
Registriert: 04.01.2004 21:08:45

Beitrag von Daemlock » 13.12.2007 16:28:09

*haue dickschädel an Wand*

Hab den Fehler gefunden :oops:
Einerseits hat das Programm eh den Falschen Befehl bekommen und anderer Seits hab ich die "where" clausel vergessen. :?
Manchmal hab ich wriklich Tomaten auf den Augen, so einen Fehler nicht zu sehen. Aber jetzt klaps ja :)

oh and zum Thema; die Update funktion von mysqwl++ verwenden.
Ich denk, ich werde mich nicht mit so einer syntax anfreunden, die update hat.
Aber denoch danke The Torso.

Benutzeravatar
The Torso
Beiträge: 882
Registriert: 13.07.2003 12:46:40
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von The Torso » 13.12.2007 16:31:12

Daemlock hat geschrieben:oh and zum Thema; die Update funktion von mysqwl++ verwenden.
Ich denk, ich werde mich nicht mit so einer syntax anfreunden, die update hat.
Aber denoch danke The Torso.
Ja, die Syntax ist mir auch nicht sehr sympatisch, hab mir deshalb eine Wrapper-Funktion geschrieben.
Debian GNU/Linux 00101010

Antworten