Heim >Datenbank >MySQL-Tutorial >Wie importiert man tabulatorgetrennte Textdateien mithilfe von LOAD DATA INFILE effizient in MySQL?

Wie importiert man tabulatorgetrennte Textdateien mithilfe von LOAD DATA INFILE effizient in MySQL?

Barbara Streisand
Barbara StreisandOriginal
2024-12-23 03:13:09355Durchsuche

How to Efficiently Import Tab-Delimited Text Files into MySQL Using LOAD DATA INFILE?

Importieren von Daten aus Textdateien in MySQL mit LOAD DATA INFILE

Das Importieren großer Datensätze aus Textdateien in MySQL kann eine häufige Aufgabe sein, wenn es um Datenanalysen oder Integrationsszenarien geht . Eine der effizientesten Möglichkeiten, dies zu erreichen, ist die Verwendung des Befehls LOAD DATA INFILE.

Befehlsstruktur

Der Befehl LOAD DATA INFILE folgt einer bestimmten Syntax:

LOAD DATA INFILE 'file_path'
INTO TABLE table_name
FIELDS TERMINATED BY 'delimiter'
LINES TERMINATED BY 'line_delimiter'
(column_list)

Tabulatorgetrennt importieren Daten

Wie in Ihrer Frage erwähnt, enthält Ihre Textdatei tabulatorgetrennte Daten. Standardmäßig geht LOAD DATA INFILE von einem Tabulator als Feldtrennzeichen aus. Daher sollte der folgende Befehl Ihre Daten importieren:

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport;

Trennzeichen angeben

Wenn Ihre Datei ein anderes Trennzeichen verwendet, können Sie es mithilfe von FIELDS TERMINATED BY angeben Klausel. Wenn Ihre Daten beispielsweise durch Kommas getrennt sind:

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport
FIELDS TERMINATED BY ','

Zeilentrennzeichen festlegen

Die LINES TERMINATED BY-Klausel gibt das Zeilenendezeichen an. Standardmäßig ist es „n“ für neue Zeile. Wenn Ihre Datei ein anderes Zeichen verwendet, passen Sie es entsprechend an.

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n';  # If your file uses CRLF as line delimiter

Spaltenzuordnung

Mit dem Teil (column_list) können Sie die Zuordnung zwischen den Spalten in der Datei angeben Textdatei und die Spalten in der Datenbanktabelle. Wenn die Reihenfolge und Anzahl der Spalten übereinstimmen, können Sie diesen Teil weglassen.

Beispiel mit Spaltenzuordnung

Angenommen, Ihre Textdatei enthält zusätzliche Spalten, die in der PerformanceReport-Tabelle nicht vorhanden sind . Sie können in Ihrem Befehl nur die relevanten Spalten angeben:

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport (id, date, value, keyword, cost, clicks)
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n';

Weitere Überlegungen

  • Stellen Sie sicher, dass der Benutzer, der den Befehl ausführt, über die erforderlichen Importrechte verfügt Daten.
  • Die Textdatei sollte für den Datenbankserver zugänglich sein.
  • Große Datenimporte erfordern möglicherweise eine Anpassung der Speichereinstellungen optimale Leistung.

Das obige ist der detaillierte Inhalt vonWie importiert man tabulatorgetrennte Textdateien mithilfe von LOAD DATA INFILE effizient in MySQL?. 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