Heim >Datenbank >MySQL-Tutorial >Wie kann ich eine CSV-Datei mit mehrzeiligen Textfeldern erfolgreich in MySQL importieren?

Wie kann ich eine CSV-Datei mit mehrzeiligen Textfeldern erfolgreich in MySQL importieren?

Barbara Streisand
Barbara StreisandOriginal
2025-01-02 19:35:39449Durchsuche

How Can I Successfully Import a CSV with Multi-Line Text Fields into MySQL?

CSV-Dateien in MySQL-Tabellen importieren

Das Laden von CSV-Dateien in MySQL-Tabellen kann eine unkomplizierte Aufgabe sein, kann jedoch manchmal zu Komplikationen führen Formatierungsprobleme. Ein solches Problem tritt auf, wenn die CSV-Datei in einigen ihrer Felder mehrere Textzeilen enthält.

Im dargestellten Szenario erstellte der Benutzer eine MySQL-Tabelle mit entsprechenden Spalten für jedes Feld in der CSV-Datei, einschließlich VARCHAR( 256) Felder für Textklappen. Beim Versuch, die Daten mit der LOAD DATA INFILE-Anweisung zu laden, wurde jedoch die gesamte Tabelle mit NULL-Werten gefüllt.

Das zugrunde liegende Problem ergab sich aus dem Standardverhalten von MySQL, neue Zeilen als Zeilentrennzeichen zu analysieren. Um dieses Problem zu beheben, hat der Benutzer zusätzliche Parameter in der LOAD DATA-Anweisung angegeben, darunter:

  • COLUMNS TERMINATED BY ',': Trennzeichen für Spalten
  • OPTIONAL ENCLOSED BY '"': Trennzeichen für Text Felder
  • ESCAPED BY '"': Escape-Zeichen für Anführungszeichen innerhalb von Textfeldern
  • LINES TERMINATED BY 'n': Trennzeichen für Zeilen
  • 1 ZEILEN IGNORIEREN: Überspringt die Kopfzeile Zeile

Während dieser Ansatz es dem Benutzer ermöglichte, die richtige Anzahl von Datensätzen zu laden, blieben einige der Daten in der falschen Reihenfolge. Um dieses Problem zu beheben, untersuchte der Benutzer alternative Methoden zum Importieren der CSV-Datei.

Eine empfohlene Methode war die Verwendung des mysqlimport-Tools:

mysqlimport --ignore-lines=1 \
            --fields-terminated-by=, \
            --local -u root \
            -p Database \
             TableName.csv

Mit diesem Tool können verschiedene Parameter ähnlich dem LOAD angegeben werden DATA-Anweisung, einschließlich Zeilen- und Feldtrennzeichen. Durch die Verwendung von mysqlimport kann der Benutzer sicherstellen, dass die Daten im richtigen Format und in der richtigen Reihenfolge geladen werden.

Das obige ist der detaillierte Inhalt vonWie kann ich eine CSV-Datei mit mehrzeiligen Textfeldern erfolgreich in MySQL importieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn