MySQL-Fehler (1261). SQL will alle 5 Spalten befüllt sehen - wie kann ich die befüllen oder ignorieren? (.csv)
Importierung einer .csv Datei in eine MySQL-Tabelle
Guten Morgen!
Ich habe ein Problem, und zwar muss ich meine .csv Datei, die 5 Spalten besitzt, in MySQL importieren.
Dazu habe ich den LOAD DATA INFILE Befehl benutzt:
Wenn ich diesen Befehl ausführe, meldet er mir folgenden Error:
Ich habe daraufhin meine .csv Datei nochmal angeschaut und gesehen, dass in dieser und den nächsten 10 hinter der 4. Spalte ein Semikolon (;) fehlt. Die Spalte 5 ist nur selten befüllt -> allerdings gibt es auch bei einer leeren Zeile manchmal ein Semikolon und öfters keines.
Deshalb denkt MySQL nun, dass es nach der 4. Spalte aufhört und gibt mir einen Error.
Meine Frage deshalb:
Wie kann ich MySQL sagen, dass er so etwas ignorieren und sofort die nächste Zeile gehen soll?
Oder kann ich so etwas auch schon Excel sagen bzw. mit Batch erledigen (dann wäre es aber das falsche Forum)?
Suche schon eine Zeit lang bei Google herum, finde jedoch leider keinen Rat.
Dann danke ich erst mal für's lesen und hoffe dass ihr mir helfen könnt
Liebe Grüße,
Simon
Guten Morgen!
Ich habe ein Problem, und zwar muss ich meine .csv Datei, die 5 Spalten besitzt, in MySQL importieren.
Dazu habe ich den LOAD DATA INFILE Befehl benutzt:
LOAD DATA INFILE 'Dateipfad'
INTO TABLE dbname.tabellenname
FIELDS TERMINATED BY ';'
Wenn ich diesen Befehl ausführe, meldet er mir folgenden Error:
ROW 97 doesn't contain data for all columns - Fehlernr. 1261
Ich habe daraufhin meine .csv Datei nochmal angeschaut und gesehen, dass in dieser und den nächsten 10 hinter der 4. Spalte ein Semikolon (;) fehlt. Die Spalte 5 ist nur selten befüllt -> allerdings gibt es auch bei einer leeren Zeile manchmal ein Semikolon und öfters keines.
Deshalb denkt MySQL nun, dass es nach der 4. Spalte aufhört und gibt mir einen Error.
Meine Frage deshalb:
Wie kann ich MySQL sagen, dass er so etwas ignorieren und sofort die nächste Zeile gehen soll?
Oder kann ich so etwas auch schon Excel sagen bzw. mit Batch erledigen (dann wäre es aber das falsche Forum)?
Suche schon eine Zeit lang bei Google herum, finde jedoch leider keinen Rat.
Dann danke ich erst mal für's lesen und hoffe dass ihr mir helfen könnt
Liebe Grüße,
Simon
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 93842
Url: https://administrator.de/forum/mysql-fehler-1261-sql-will-alle-5-spalten-befuellt-sehen-wie-kann-ich-die-befuellen-oder-ignorieren-csv-93842.html
Ausgedruckt am: 20.05.2025 um 13:05 Uhr
5 Kommentare
Neuester Kommentar
Moin WaSimonSu,
willkommen im Forum.
Per Batch nacharbeiten wäre ein Prozessschritt mehr und von daher Plan B.
Wir sollten es bei "Dateiexport" und "Dateiimport" mit je einer beteiligten Appz belassen.
Aber ich nehme dann schon Kontakt mit den Moderatoren von "Datenbanken", "Entwicklung" und "Batch & Shell" auf und einige mich mit denen. Die sind alle ganz unkompliziert.
Grüße
Biber
willkommen im Forum.
Oder kann ich so etwas auch schon Excel sagen bzw. mit Batch erledigen
Jepp, bei Excel als DatenerzeugerIn würde ich ansetzen.Per Batch nacharbeiten wäre ein Prozessschritt mehr und von daher Plan B.
Wir sollten es bei "Dateiexport" und "Dateiimport" mit je einer beteiligten Appz belassen.
(dann wäre es aber das falsche Forum)?
Ach was, das meiste hier ist sowieso interdisziplinär und undiszipliniert.Aber ich nehme dann schon Kontakt mit den Moderatoren von "Datenbanken", "Entwicklung" und "Batch & Shell" auf und einige mich mit denen. Die sind alle ganz unkompliziert.
- Wie erzeugst Du denn heute die .csv-Datei (Makro, manuell,..)?
- ist es fachlich richtig und gewünscht, das derartige Sätze "allerdings gibt es auch bei einer leeren Zeile manchmal ein Semikolon und öfters keines" überhaupt mit rüberwandern?
- gibt es einen Validitätscheck auf Excelseite (nur "gültige"/vollständige Sätze im Sinne des DB-Designs werden exportiert? Denn auf mySQL-Seite nimmst Du ja wohl alles...
Grüße
Biber