www.mikrocontroller.net

Forum: PC-Programmierung mysql C++ Linux


Important announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Markus K. (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Hallo zusammen
Ich habe das Problem das ich in einer Schleife ca. 50 "Insert" Queries 
ausführe.
sprintf(msg,"INSERT INTO `loggdb`.`temp1` (Wert) VALUES ('%u');",wert);
mysql_real_query(conn,msg,strlen(msg));
Leider steht dann nur ein Datensatz in der Datenbank. ????
Werte ändern sich! Nur Tabelle ist im Moment immer die gleiche.
Wenn ich eine Pause einfüge klappt es!!
Das kann doch nicht sein oder??
Hab mit START TRANSACTION, COMMIT schon probiert.
Hab gelesen das man myisam_bulk_insert_tree_size oder key_buffer_size 
grösser machen kann. Ich finde aber die Standard werte müssen doch 
reichen. Bin der einzige der auf die db zugreift.

Komm nicht mehr weiter. Kann mir jemand einen Tipp geben?
Danke

Autor: Werner P. (wpfundstein)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
frag doch mal sql_error ab

Autor: Markus K. (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Endlich.

Vielen vielen Dank. Dein Tipp mit mysql_error hat mir folgenden Fehler 
ausgegeben:
Fehler: Duplicate entry '2012-03-31 14:55:57' for key 'PRIMARY' 
Also bei der Spalte mit dem Zeitstempel "Primary Key" deaktivieren und 
schon funktioniert es.

Man das hätte ich auch schon früher machen können mit dem error.
Vielen vielen Dank.

Autor: D. I. (grotesque)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Eine timestamp-Spalte als PRIMARY KEY zu definieren scheint mir nicht 
besonders sinnvoll.

Weißt du überhaupt was du tust?

Autor: Markus K. (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
@D. I.

Ja das mit dem PRIMARY KEY hast du absolut recht.
Die Spalte war mal die ID mit  AUTO_INCREMENT so kam das zustande:-(

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net