mySQL im Batchbetrieb Fehler und Probleme

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

mySQL im Batchbetrieb Fehler und Probleme

Postby BeSt79 » 10. November 2006 15:47

Hallo allerseits.

Wir generieren aus einem Großrechnersystem heraus eine Datei, die auf den PC übertragen wird. Diese Datei ist auf dem PC eine simple ASCII-Textdatei. In diesem File sind mehrere Tausend SQL-Statements enthalten. Nun wollen wir diese Datei über die Kommandozeile an den mySQL-Server schicken und alle Statements zur Ausführung bringen.

Dies versuchen wir mittels
mysql --user=benutzer --pasword=pwd db_name < datei.txt

Hier gibt der mySQL-Server nun 2 Varianten von Fehlern aus. Zum ersten kann ein "ERROR 1136 at line 100 (Coloumn count doesn´t match value count)" auftauchen. Rein technisch ist dieser Fehler nicht möglich, da alle INSERTS (so auch das, bei dem dieser Fehler auftaucht) exakt identisch aufgebaut sind (sie kommen ja auch aus dem selben Programm). Wenn man nun einige wenige Zeilen vor der betroffenen Zeile 100 aus dem Textfile löscht, dann rutscht der Fehler (wie erwartet) weiter nach oben (also z.B. beim Löschen von 3 Zeilen von 100 auf 97). Soweit so gut. Wenn man nun aber z.B. 95 Zeilen vor der betroffenen Zeile 100 löscht, dann rauscht der mySQL-Server über die sagenhafte Zeile 100 (nun ja Zeile 5) drüber und bekommt viel später wieder einen ähnlichen Fehler und das SPiel beginnt von vorn.

Lustig ist auch, wenn ich die betroffene Zeile aus dem Textfile herauskopiere und z.B. im phpMyAdmin oder im mySQL-QueryBrowser ausführe, dann hat er NULL PROBLEMO.

Zweitens kann folgender Fehler auftreten: "ERROR 1064 at line 200: You have an error in your SQL syntax...". Hier stellt sich exakt das selbe Verhalten wie bei Variante 1 ein. Und auch hier kann ich die angeblich Fehlerhafte SQL-Anweisung im phpMyAdmin problemlos in die Datenbank schießen!

So jetzt hoffe ich, dass einer von euch dieses Problem kennt und lösen kann. Ich habe schon max-packet-size verändert und auch die aktuellste mySQL-Version (5.0.27) installiert. Ich bin mit meinem Latein am Ende und stochere buchstäblich im dichtesten Nebel.

Für jeden Tip bin ich dankbar.

Beste Grüße
Benni
Last edited by BeSt79 on 10. November 2006 17:05, edited 1 time in total.
BeSt79
 
Posts: 16
Joined: 26. January 2006 12:47

Postby BeSt79 » 10. November 2006 17:05

Es hat sich erledigt.

Wir haben entdeckt, dass in einigen Feldern vom Großrechner noch ein Low-Value (0x00) übertragen wurde. Diese Felder haben beim mySQL-Server das unvorhersehbare Verhalten herbeigeführt. Nachdem wir nun diese 0x00-Werte vor der Übertragung killen ist das Problem weg.

Trotzdem danke für alle, die sich vielleicht schon Gedanken gemacht haben...
BeSt79
 
Posts: 16
Joined: 26. January 2006 12:47


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 23 guests